java如何实现sql连接和查询的代码?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java如何实现sql连接和查询的代码?相关的知识,希望对你有一定的参考价值。

参考技术A

import java.sql.Connection。

import java.sql.DriverManager;  
import java.sql.PreparedStatement;  
import java.sql.ResultSet;  
import java.sql.SQLException;

import javax.naming.Context;  
import javax.naming.InitialContext;  
import javax.naming.NamingException;  
import javax.sql.DataSource;

public class DBCon
//数据库驱动对象
public static final String DRIVER="oracle.jdbc.driver.OracleDriver";
//数据库连接地址(数据库名)
public static final String URL="jdbc:oracle:thin:@localhost:1521:orcl";
//登陆名
public static final String USER="FM";
//登陆密码
public static final String PWD="FM";
//创建数据库连接对象
private Connection con=null;
//创建数据库预编译对象
private PreparedStatement ps=null;
//创建结果集
private ResultSet rs=null;
//创建数据源对象
public static DataSource source=null;

//  //静态代码块  
//  static  
//  
//      //初始化配置文件context  
//      try  
//          Context context=new InitialContext();  
//          source=(DataSource)context.lookup("java:comp/env/jdbc/webmessage");  
//       catch (Exception e)  
//          // TODO Auto-generated catch block  
//          e.printStackTrace();  
//        
//  
//  
//  

/**
* 获取数据库连接
*/
public Connection getCon()
try
Class.forName(DRIVER);
catch (ClassNotFoundException e)
// TODO Auto-generated catch block
e.printStackTrace();

try
con=DriverManager.getConnection(URL,USER,PWD);
catch (SQLException e)
// TODO Auto-generated catch block
e.printStackTrace();


return con;
 
//  /**  
//   * 获取数据库连接  
//   */  
//  public Connection getCon()  
//  
//      try  
//          con=source.getConnection();  
//       catch (SQLException e)  
//          // TODO Auto-generated catch block  
//          e.printStackTrace();  
//        
//  
//      return con;  
//    

/**
* 关闭所有资源
*/
public void closeAll()
if(rs!=null)
try
rs.close();
catch (SQLException e)
// TODO Auto-generated catch block
e.printStackTrace();

if(ps!=null)
try
ps.close();
catch (SQLException e)
// TODO Auto-generated catch block
e.printStackTrace();

if(con!=null)
try
con.close();
catch (SQLException e)
// TODO Auto-generated catch block
e.printStackTrace();
 


/**
* @param sql数据库更新(增、删、改) 语句
* @param pras参数列表(可传,可不传,不传为NULL,以数组形式存在)
* @return 返回受影响都行数
*/
public int update(String sql,String... pras)
int resu=0;
con=getCon();
try
ps=con.prepareStatement(sql);
for(int i=0;i<pras.length;i++)
ps.setString(i+1,pras[i]);

resu=ps.executeUpdate();
catch (SQLException e)
// TODO Auto-generated catch block
e.printStackTrace();

finally
closeAll();

return resu;


/**
* @param sql数据库查询语句
* @param pras参数列表(可传,可不传,不传为NULL,以数组形式存在)
* @return 返回结果集
*/
public ResultSet query(String sql,String... pras)
con=getCon();
try
ps=con.prepareStatement(sql);

if(pras!=null)
for(int i=0;i<pras.length;i++)
ps.setString(i+1, pras[i]);

rs=ps.executeQuery();
catch (SQLException e)
// TODO Auto-generated catch block
e.printStackTrace();

return rs;
 

LDAP在JAVA中如何模糊查询

参考技术A /** * 获得LDAP连接(不通过连接池,直接获得连接) * @return * @throws Exception */ private javax.naming.directory.DirContext getDirContext() throws Exception DirContext ctx = null; java.util.Hashtable env = new java.util.Hashtable(); env.put(Context.INITIAL_CONTEXT_FACTORY, "com.sun.jndi.ldap.LdapCtxFactory"); env.put(Context.PROVIDER_URL, "ldap://localhost:389"); env.put(Context.SECURITY_AUTHENTICATION, "simple"); env.put(Context.SECURITY_PRINCIPAL, user); env.put(Context.SECURITY_CREDENTIALS, pwd); ctx = new InitialDirContext(env); return ctx; /** * 返回用户查询接口 * @param DN 查找范围 ou=test,dc=abcd,dc=com * @param filter 过滤条件 cn=* * @param myserach 搜索范围 * @return LDAP标准接口 * @throws Exception */ public javax.naming.NamingEnumeration getFilter(String DN,String filter,int myserach) throws Exception DirContext ctx = getDirContext(); try NamingEnumeration em; SearchControls con = new SearchControls(); con.setSearchScope(myserach); em = ctx.search(DN, filter, con); return em; finally // /** * 设置条件查找 * @param dn 查找的根结点 * @param filter 查找条件 * @param level 查找范围 * @return 返回一个由DN组成的JAVA STRING 列表 * @throws Exception */ public java.util.Vector getfilterNodes(String dn,String filter,int level) throws Exception java.util.Vector ve=new java.util.Vector(); NamingEnumeration em=getFilter(dn,filter,level); while(em!=null && em.hasMoreElements()) SearchResult rs=(SearchResult)em.nextElement(); String db=rs.getName(); if (db.trim().equals("")) ve.add(dn); else ve.add(db+","+dn); return ve; 查看原帖>>

以上是关于java如何实现sql连接和查询的代码?的主要内容,如果未能解决你的问题,请参考以下文章

LDAP在JAVA中如何模糊查询

使用Go实现一个数据库连接池

sql语句里如何实现给查询记录添加自然序号?

JDBC如何连接SQL Server数据库实现增删改查

已经查询出来的数据如何在java页面实现分页?

如何通过java程序查询出来与数据库中指定的表相关联的表呢?