关于java 连接数据库实现增删改查的具体功能代码。
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了关于java 连接数据库实现增删改查的具体功能代码。相关的知识,希望对你有一定的参考价值。
public interface ApersonDao
public List<Tost> selectTest1();
public int saveTest1();
public List<Tost> insertTest1();
public List<Tost> deleteTest1();
这是我ApersonDao.java下的代码,定义1个接口和增删改查的4个空的构造方法。
------------------------------------------分割线------------------------------------------
package com.sino.waitfm.core.lee.dao.impl;
import java.util.List;
import org.springframework.stereotype.Repository;
import com.sino.waitfm.core.lee.dao.ApersonDao;
import com.sino.waitfm.core.lee.dao.entity.Tost;
import com.targtime.dbutils.dao.core.TGJdbcTemplate;
@Repository
public class ApersonDaoImpl extends TGJdbcTemplate implements ApersonDao
private static final String SELECT_BYLOGINNAME = "SELECT * FROM test1 ";
private static final String UPDATE = "update test1 set name = ? where id = ?";
private static final String DELETE = "delete from test1 where id = ?";
private static final String INSERT = "insert into test1 values (id = ?, name = '?')";
@Override
public List<Tost> selectTest1 ()
return queryForList(SELECT_BYLOGINNAME,Tost.class);
@Override
public int saveTest1()
return save(UPDATE,Tost.class);
@Override
public List<Tost> insertTest1()
return insert(INSERT,Tost.class);
@Override
public List<Tost> deleteTest1()
return null;
这是我的ApersonDaoImpl.java下的代码。
我想实现的功能是通过数据库实现增删改查的功能,求真正懂行的人,给个详细点的解释,
1,定义空构造方法上有什么错误,名称包括各式。
2,ApersonDaoImpl,里面重写构造方法的return返回值应该怎么写,
3,如何实例化这些对象,并实现增删改查的功能,求代码和详解,谢谢了。
首先你得确定你的数据库连接是通过什么形式连接的,hibernate还是原生态的jdbc 还是spring;
如果是只有hibernate,那么你得通过加载配置文件得到sessionFactory,然后得到session
如果spring,那么同样也需要注入sessionfactory到你的dao
如果是jdbc方式,那么你就按照原生态jdbc写法
总之,在你构造DAO时,得有数据源。这样才能操纵你的数据库
如果搞懂了这些问题,那么你的第一个,第三个问题就迎刃而解了。至于第二问题,我没明白你什么意思!
用的JDBC,谢谢你给我说的原理,但是现在比较初级,你能给我编译一个正确的代码么,基于我写出的,谢谢了。
追答public class DBUtils
public static Connection jdbcConmysql()
Connection conn = null;
try
Class.forName(jdbcDriver);
conn = DriverManager.getConnection(jdbcUrl, jdbcUser, jdbcpasswd);
catch (ClassNotFoundException e)
e.printStackTrace();
catch (SQLException e)
e.printStackTrace();
public class ApersonDaoImpl extends TGJdbcTemplate implements ApersonDao
private Connection conn=null;
public ApersonDaoImpl()
conn=DBUtils.jdbcConMysql();
public List queryForList()
PreparedStatement ps=conn.prepareStatement(sql);
// 然后执行查询语句 PreparedStatement的方法
先构造Connection对象,通过new一个DAO就行了,然后构造PreparedStatement对象,执行语句就行了。
然后如果调用DAO,直接new
java jdbc连接数据库 oracle的代码实现增删改查的方法怎么写
package db;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
/*
* 使用JDBC连接数据库
*/
public class BaseDao
Connection conn = null;
PreparedStatement ps = null;
ResultSet rs = null;
// 连接
public void getConnection()
try
// 1.Class.forName()加载驱动
Class.forName("oracle.jdbc.driver.OracleDriver");
// 2.DriverManager.getConnection(URL,用户名,密码)获得数据库连接
conn = DriverManager.getConnection(
"jdbc:oracle:thin:@localhost:1521:orcl", "youjie", "root");
catch (ClassNotFoundException e)
e.printStackTrace();
catch (SQLException e)
e.printStackTrace();
// 关闭连接
public void closeAll()
try
if (rs != null)
rs.close();
if (ps != null)
ps.close();
if (conn != null)
conn.close();
catch (SQLException e)
e.printStackTrace();
// 执行操作
public ResultSet executeQuery(String sql, Object[] params)
getConnection();
try
ps = conn.prepareStatement(sql);
if (params != null)
for (int i = 0; i < params.length; i++)
ps.setObject(i + 1, params[i]);
rs = ps.executeQuery();
return rs;
catch (SQLException e)
e.printStackTrace();
return null;
这个代码我只有查询的方法,修改和删除怎么写?
建议直接使用SQL去修改,特别是删除,使用SQL很快捷追问
Java代码怎么写这个修改的方法
Java代码怎么写这个修改的方法,我已经写了查询的方法了public ResultSet executeQuery 这个东西
追答修改是不能通用的。。。。。。。。。。
参考技术B 楼主是这在重写这个方法啊,那PrapareStatement普通的修改和删除一定会了吧,无意冒犯,executeQuery是主要是查询用的,我一般修删都是用executeUpdate以上是关于关于java 连接数据库实现增删改查的具体功能代码。的主要内容,如果未能解决你的问题,请参考以下文章
java jdbc连接数据库 oracle的代码实现增删改查的方法怎么写
C#.NET,程序怎么实现和SQLITE数据库的连接?以及增删改查的功能?