public int userAdd(User user){
int rt = 0
String sql = "insert into USERS(userName,password,realName,sex) values(?,?,?,?)"
try{
conn = this.getConn()
pstmt = conn.prepareStatement(sql)
pstmt.setString(1, user.getUserName())
pstmt.setString(2, user.getPassWord())
pstmt.setString(3, user.getRealName())
pstmt.setString(4, user.getSex())
rt = pstmt.executeUpdate()
}catch(SQLException e){
e.printStackTrace()
}catch(Exception e){
e.printStackTrace()
}finally{
this.closeAll(conn, pstmt, rs)
}
return rt
}
倘若你用了hibernate等orm框架,则相对简单,不用那么费劲的进行一个一个的赋值了,它对jdbc进行了封装,并且本身还有一种hql语言。说到底都是用sql语句进行数据库 *** 作!具体请查找资料!
Struts是针对action的(model层),它本身不具有增删改查功能的。扩展:要通过dao层(spring事务管理)来做增删改查功能的。
可以参考下如下代码实现增删改查:
import java.sql.PreparedStatement
import java.sql.ResultSet
import Bean.Bean
public class shixian implements DAO {
public void delete(Bean bean) throws Exception {
// 删除数据
String sql = "delete from person where name=?"
Conn conn = new Conn()//创建数据库连接
PreparedStatement pre
try {
//获取连接,执行sql
pre = conn.getConn().prepareStatement(sql)
pre.setString(1, bean.getName())
pre.executeUpdate()
pre.close()//关闭数据库连接
} catch (Exception e) {
e.printStackTrace()
}
}
public void insert(Bean bean) throws Exception {
// 增加数据
String sql = "insert into person values(?,?)"
Conn conn = new Conn()//创建数据库连接
PreparedStatement pre = null
try {
//获取连接,执行sql
pre = conn.getConn().prepareStatement(sql)
pre.setString(1, bean.getName())
pre.setString(2, bean.getPassword())
pre.executeUpdate()
pre.close()//关闭数据库连接
}
catch (Exception e) {
e.printStackTrace()
}
}
public Bean select(String name) throws Exception {
// 查询数据
String sql = "select name,password from person where name=?"
Conn conn=new Conn()//创建数据库连接
Bean bean = new Bean()
PreparedStatement pre = null
try{
//获取连接,执行sql
pre = conn.getConn().prepareStatement(sql)
pre.setString(1, name)
ResultSet rs = pre.executeQuery()
if (rs.next()) {
bean.setName(rs.getString(1))
bean.setPassword(rs.getString(2))
}
rs.close()
pre.close()//关闭数据库连接
} catch (Exception e) {
e.printStackTrace()
}
return bean
}
public void update(Bean bean) throws Exception {
// 修改数据
String sql = "insert into person values(?,?)"
Conn conn = new Conn()//创建数据库连接
PreparedStatement pre = null
try {
//获取连接,执行sql
pre = conn.getConn().prepareStatement(sql)
pre.setString(1, bean.getName())
pre.setString(1, bean.getPassword())
pre.executeUpdate()
pre.close()//关闭数据库连接
}
catch (Exception e) {
e.printStackTrace()
}
}
}
可以在定向时,传个参数过去.如:<a href="....jsp?name=[你的值]">显示</a>
然后在获取name的值String name=request.getParameter("name")
进行业务处理,显示你想要的东西.
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)