java struts 实现简单的增删改查功能
增删改基本都明白了查询结果怎么输出在当前页面并且替换原来显示的所有数据页面啊求一份struts实现增删改查的代码谢谢啦大神!!!...
增删改基本都明白了 查询结果怎么输出在当前页面并且替换原来显示的所有数据页面啊 求一份struts实现增删改查的代码 谢谢啦 大神!!!
展开
6个回答
展开全部
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();
}
}
}
扩展:要通过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();
}
}
}
展开全部
其实这个在我一开始学的时候我也很想弄明白的。代码你需要一个项目。我就简单说下这个原理吧
首先增删查改到的数据会被封装到resultset里面,增删查改只是一个dao层的方法,还需要在dao层以外的一层在写一些获取resultset数据的类,这些类会就好比进行加工,把各种数据处理在一起,dao层通过javabean来获取resultset的数据 ,然后jsp就可以通过方法获取之后,在jsp页面调用相应的方法诸如:某个类的名字,a.get(),这样的方式放置数据的。也有一些标签可以直接用于输出的,
配置文件的作用是根据不同的请求 给予不同的相应,。
明白了吗?
首先增删查改到的数据会被封装到resultset里面,增删查改只是一个dao层的方法,还需要在dao层以外的一层在写一些获取resultset数据的类,这些类会就好比进行加工,把各种数据处理在一起,dao层通过javabean来获取resultset的数据 ,然后jsp就可以通过方法获取之后,在jsp页面调用相应的方法诸如:某个类的名字,a.get(),这样的方式放置数据的。也有一些标签可以直接用于输出的,
配置文件的作用是根据不同的请求 给予不同的相应,。
明白了吗?
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你的Action类中要有List这个成员。struts.xml。要转发到另外一个jsp页面。记住。是转发。
然后你到jsp页面就可以调用这个List成员
假如。你action中有个List<User> list;
你在excute中给他赋值。
list得有get方法。
你在jsp页面
<s:itertor value="list"></s:itertor>遍历出来。
然后你到jsp页面就可以调用这个List成员
假如。你action中有个List<User> list;
你在excute中给他赋值。
list得有get方法。
你在jsp页面
<s:itertor value="list"></s:itertor>遍历出来。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
package com.hnsf.edu.struts.adminaction;
import java.util.List;
import com.hnsf.edu.bean.Product;
import com.hnsf.edu.dao.ProductDao;
import com.opensymphony.xwork2.ActionSupport;
public class ProductAction extends ActionSupport {
private int id=0;
private List<Product> products;
private Product p;
public Product getP() {
return p;
}
public void setP(Product p) {
this.p = p;
}
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public List<Product> getProducts() {
return products;
}
public void setProducts(List<Product> products) {
this.products = products;
}
public String SelAllProduct(){
ProductDao dao = ProductDao.getInstance();
products=dao.selAllProduct();
return SUCCESS;
}
public String delProductById(){
ProductDao dao = ProductDao.getInstance();
/*dao.delProductById(id);
return SUCCESS;*/
if(dao.delProductById(id)){
return SUCCESS;
}else{
this.addActionMessage("删除失败,请重新删除!");
return SUCCESS;
}
}
public String addProduct(){
ProductDao dao = ProductDao.getInstance();
dao.AddProduct(p);
return SUCCESS;
/*boolean result=dao.AddProduct(p);
if(result){
return SUCCESS;
}else{
this.addActionMessage("增加失败,请重新增加!");
return SUCCESS;
}*/
}
public String selProductById(){
ProductDao dao = ProductDao.getInstance();
if(dao.selProductById(id) != null){
return SUCCESS;
}else{
this.addActionMessage("查询失败,请重新查询!");
return SUCCESS;
}
/* boolean result =dao.selProductById(id)!= null ;
if(result){
return SUCCESS;
}else{
this.addActionMessage("查询失败,请重新查询!");
return SUCCESS;
}
*/
}
public String updateProduct(){
ProductDao dao = ProductDao.getInstance();
if(dao.updateProductById(p)){
return SUCCESS;
}else{
this.addActionMessage("更改失败,请重新更改!");
return SUCCESS;
}
}
}
import java.util.List;
import com.hnsf.edu.bean.Product;
import com.hnsf.edu.dao.ProductDao;
import com.opensymphony.xwork2.ActionSupport;
public class ProductAction extends ActionSupport {
private int id=0;
private List<Product> products;
private Product p;
public Product getP() {
return p;
}
public void setP(Product p) {
this.p = p;
}
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public List<Product> getProducts() {
return products;
}
public void setProducts(List<Product> products) {
this.products = products;
}
public String SelAllProduct(){
ProductDao dao = ProductDao.getInstance();
products=dao.selAllProduct();
return SUCCESS;
}
public String delProductById(){
ProductDao dao = ProductDao.getInstance();
/*dao.delProductById(id);
return SUCCESS;*/
if(dao.delProductById(id)){
return SUCCESS;
}else{
this.addActionMessage("删除失败,请重新删除!");
return SUCCESS;
}
}
public String addProduct(){
ProductDao dao = ProductDao.getInstance();
dao.AddProduct(p);
return SUCCESS;
/*boolean result=dao.AddProduct(p);
if(result){
return SUCCESS;
}else{
this.addActionMessage("增加失败,请重新增加!");
return SUCCESS;
}*/
}
public String selProductById(){
ProductDao dao = ProductDao.getInstance();
if(dao.selProductById(id) != null){
return SUCCESS;
}else{
this.addActionMessage("查询失败,请重新查询!");
return SUCCESS;
}
/* boolean result =dao.selProductById(id)!= null ;
if(result){
return SUCCESS;
}else{
this.addActionMessage("查询失败,请重新查询!");
return SUCCESS;
}
*/
}
public String updateProduct(){
ProductDao dao = ProductDao.getInstance();
if(dao.updateProductById(p)){
return SUCCESS;
}else{
this.addActionMessage("更改失败,请重新更改!");
return SUCCESS;
}
}
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
汗不带这样问问题的~这个你要自己去网上查资料的
追问
额 我是小白 好吧 我去查查
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询