本地程序和本地数据库MySQL的通信?

本地程序和本地数据库MySQL的通信?,第1张

地程序和本地数据库 MySQL 的通信通常是通过网络套接字进行的。网络套接字是指用于在计算机网络中传输数据的通信端口,可以用于实现计算机之间的数据传输。

MySQL 数据库提供了一个网络套接字协议,可以让程序通过网络套接字与数据库通信。程序可以通过发送 SQL 语句来执行数据库 *** 作,并通过接收 MySQL 数据库的响应来获取执行结果。

要进入该程序的内部数据库,需要使用程序提供的数据库访问接口,并输入正确的数据库用户名和密码。通常情况下,只有拥有足够权限的用户才能进入数据库。如果你没有足够的权限,可以尝试联系数据库管理员或者系统管理员,请求授予你访问数据库的权限。

另外,你还可以尝试使用数据库管理工具(比如 MySQL Workbench)来访问数据库。这些工具通常提供了一个图形化的界面,可以方便地执行数据库 *** 作,并显示执行结果。你只需要输入正确的数据库连接信息(包括主机名、端口号、用户名和密码)即可访问数据库。

package com.hd.jdbc

import java.io.IOException

import java.sql.Connection

import java.sql.PreparedStatement

import java.sql.ResultSet

import java.sql.SQLException

import java.sql.Statement

import java.util.HashMap

import java.util.Properties

import javax.naming.Context

import javax.naming.InitialContext

import javax.sql.DataSource

import javax.sql.RowSet

import sun.jdbc.rowset.CachedRowSet

public class Orcalzx {

private static String urls,users,passwords

static

{

/* Properties prop=new Properties()

urls="jdbc:mysql://localhost:3306/invest?useUnicode=true&characterEncoding=UTF-8&useFastDateParsing=false"

users="root"

passwords="123"

}

public static Connection getConnection() {

Connection con = null

try {

//con = DriverManager.getConnection(url, user, password)

con=locateDs().getConnection()//通过数据源得到连接

} catch (SQLException e) {

System.out.println(e.toString())

}

return con

}

public static DataSource locateDs()

{

DataSource ds = null

HashMap cachedDs = new HashMap()

if (cachedDs.containsKey("ds"))

ds = (DataSource)cachedDs.get("ds")

else {

try {

//初始化上下文

Context initCtx = new InitialContext()

ds = (DataSource)initCtx.lookup("java:comp/env/jdbc/ds")//jdbc/ds是数据源名称

//ds = (DataSource)initCtx.lookup("java:/ds") //jboss数据源连接方式

cachedDs.put("ds", ds)

} catch (Exception e) {

e.printStackTrace()

}

}

return ds

}

public static RowSet query(String sql)

{

CachedRowSet crs=null//需要选择sun.jdbc.rowset.CachedRowSet

ResultSet rs=null

Connection conn=getConnection()

try {

crs=new CachedRowSet()

Statement stmt=conn.createStatement()

rs=stmt.executeQuery(sql)

crs.populate(rs)

} catch (SQLException e) {

e.printStackTrace()

}

finally{

try {

conn.close()

} catch (SQLException e) {

e.printStackTrace()

}

}

return crs

}

/*public static boolean preupdate(String sql)

{

boolean f=true

Connection conn=getConnection()

try {

PreparedStatement stmt=conn.prepareStatement(sql)

stmt.setInt(1, 6)

stmt.setString(2, "gfkg")

stmt.setString(3, "gflg")

//System.out.println(stmt.executeUpdate())

//stmt.executeUpdate(sql)

} catch (SQLException e) {

f=false

e.printStackTrace()

}

finally{

try {

conn.close()

} catch (SQLException e) {

e.printStackTrace()

}

}

return f

}*/

public static boolean update(String sql)

{

boolean f=true

Connection conn=getConnection()

try {

Statement stmt=conn.createStatement()

stmt.executeUpdate(sql)

} catch (SQLException e) {

f=false

//e.printStackTrace()

}

finally{

try {

conn.close()

} catch (SQLException e) {

e.printStackTrace()

}

}

return f

}

/* public static String select(String sql){

String pwd=""

try {

ResultSet rs=query(sql)//从 CachedRowSet 对象获取数据可使用继承自 ResultSet 接口的获取方法

while(rs.next())

{

//int id=rs.getInt(1)//列的索引

//user=rs.getString("username")

pwd=rs.getString("dept")

System.out.println(pwd)

// System.out.println(" /密码"+password)

}

} catch (SQLException e) {

e.printStackTrace()

}

return pwd

}

public static void main(String[] args) {

// System.out.println(Orcalzx.getConnection())

String sql="select * from jtest where rownum<10"

try {

ResultSet rs=query(sql)//从 CachedRowSet 对象获取数据可使用继承自 ResultSet 接口的获取方法

while(rs.next())

{

//int id=rs.getInt(1)//列的索引

int id=rs.getInt("id")

user=rs.getString("username")

password=rs.getString("password")

System.out.println("id:"+id+" /用户"+user+" /密码"+password)

}

} catch (SQLException e) {

e.printStackTrace()

}

String sql="select * from users"

try {

ResultSet rs=query(sql)//从 CachedRowSet 对象获取数据可使用继承自 ResultSet 接口的获取方法

while(rs.next())

{

//int id=rs.getInt(1)//列的索引

user=rs.getString("username")

password=rs.getString("pwdhash")

System.out.println(" /用户"+user+" /密码"+password)

}

} catch (SQLException e) {

e.printStackTrace()

}

String sql="select * from (select rownum rid, t.* from employee t where rownum<=3)t where rid>0"

//query(sql)

ResultSet rs=query(sql)//从 CachedRowSet 对象获取数据可使用继承自 ResultSet 接口的获取方法

try {

while(rs.next())

{

//int id=rs.getInt(1)//列的索引

//user=rs.getString("username")

String pwd=rs.getString("FIRST_NAME")

System.out.println(pwd)

//System.out.println(" /密码"+password)

}

} catch (SQLException e) {

// TODO Auto-generated catch block

e.printStackTrace()

}

}*/

}

希望你能看懂。很早以前写的。这里如何连接数据库 输出 怎么取值都有。记得采纳我的啊。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/6817689.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-28
下一篇 2023-03-28

发表评论

登录后才能评论

评论列表(0条)

保存