struts2增删改查.docx

上传人:b****1 文档编号:23288720 上传时间:2023-05-16 格式:DOCX 页数:24 大小:62.52KB
下载 相关 举报
struts2增删改查.docx_第1页
第1页 / 共24页
struts2增删改查.docx_第2页
第2页 / 共24页
struts2增删改查.docx_第3页
第3页 / 共24页
struts2增删改查.docx_第4页
第4页 / 共24页
struts2增删改查.docx_第5页
第5页 / 共24页
点击查看更多>>
下载资源
资源描述

struts2增删改查.docx

《struts2增删改查.docx》由会员分享,可在线阅读,更多相关《struts2增删改查.docx(24页珍藏版)》请在冰豆网上搜索。

struts2增删改查.docx

struts2增删改查

2011-06-1913:

31

struts2增删改查功能实现

上一篇讲到数据库验证用户名,这里介绍下,用户登录之后如何查看用户信息,和对用户信息的 增删改查功能实现。

先看下总体项目       有朋友说照着建立项目运行不了,所以就贴出项目的源代码,由于这个项目不知道放到哪里去了,所以自己又写了个,跟这个项目的代码可能会有点不一样,希望大家见谅 地址 如果使用较早的Myeclipse自己要加入struts2的包,要不然会显示有错误。

这是用户登陆表

这是用户信息表

1.在用户输入用户名和密码登陆之后,我们可以直接调用一个查询所有用户信息的方法,这样就可以查看到所有用户信息了,所要做的就是要写多个方法来执行,然后返回给页面显示(在这里我没有做分页演示),大家要有耐心的看哦,代码有点多。

------------------------------action类代码--------------------------

packagelaogen.action;

importjava.sql.Connection;

importjava.sql.ResultSet;

importjava.sql.Statement;

importjava.text.SimpleDateFormat;

importjava.util.ArrayList;

importjava.util.List;

importjavax.servlet.http.HttpSession;

importorg.apache.struts2.ServletActionContext;

importmon.DBcon;

importlaogen.dto.depDto;

publicclassaction{

 

 privateStringusername;//注意这里跟index.jspform里面的name属性要对应

 privateStringpassword;

 privateStringmsg;

 publicStringgetMsg(){

 returnmsg;

 }

 publicvoidsetMsg(Stringmsg){

 this.msg=msg;

 }

 //然后生成settinggetting

 publicStringgetUsername(){

 returnusername;

 }

 publicvoidsetUsername(Stringusername){

 this.username=username;

 }

 publicStringgetPassword(){

 returnpassword;

 }

 publicvoidsetPassword(Stringpassword){

 this.password=password;

 }

 

 //自己写个方法来执行登陆

 

 publicStringlogin()throwsException{

 Connectionconn=DBcon.getConnection();//这是用来连通数据库,记得,要下载个驱动程序,mysql

 Statementstmt=null;

 ResultSetrs1=null;

 ResultSetrs2=null;

 try{

  stmt=conn.createStatement();

  Stringsql1="select*fromuserinfomationwhereusername='"

    +this.username+"'";

  rs1=stmt.executeQuery(sql1);

  if(!

rs1.next()){

   //判断用户名是不是存在,如果不是则输出信息,返回界面

   this.msg="用户名不正确!

";

   return"Error";

  }else{

   

   Stringsql2="select*fromuserinfomationwherepassword='"

     +this.password+"'";

   rs2=stmt.executeQuery(sql2);

   if(!

rs2.next()){

    //判断密码是不是存在,如果不是则输出信息,返回界面

    this.msg="密码不正确!

";

    return"Error";

   }

  }

  rs1.close();

  rs2.close();

  stmt.close();

  conn.close();

 }catch(Exceptione){

  e.printStackTrace();

 }

 //当上面验证成功了,调用下面的query方法,查出所有用户信息

 returnquery();

 }

 //这里是用来输出所有用户信息

 

 publicStringquery()throwsException{

  Connectionconn=DBcon.getConnection();//这是用来连通数据库,记得,要下载个驱动程序,mysql

  Statementstmt=null;

  try{

   stmt=conn.createStatement();

   Stringsql="select*fromdep";//从另一张表查出信息

   ResultSetrs=stmt.executeQuery(sql);

   Listlist=newArrayList();//new一个list

   while(rs.next()){

    depDtodt=newdepDto();//引进depDto

    dt.setId(rs.getInt("id"));

    dt.setName(rs.getString("name"));

    dt.setSex(rs.getString("sex"));

    dt.setTime(rs.getString("time"));//这里你可以按你需要取出数据库的列的值

    list.add(dt);//把值添加到list里面

   }

   //在这我们可以输出数据库里面有多少条记录

   System.out.println("数据库里面有"+list.size()+"条记录");

   

  

   //把list放到session中,传回给页面,所以页面只需接收listAll就可以了

   HttpSessionsession=ServletActionContext.getRequest()

     .getSession();

   session.setAttribute("listAll",list);

   conn.close();

   rs.close();

   stmt.close();

  }catch(Exceptione){

   e.printStackTrace();

  }

  return"query";

 }

 

 //这里是添加信息的功能

 publicStringadd()throwsException{

  //首先要接收页面传过来的值

  Stringname=ServletActionContext.getRequest().getParameter("name");

  Stringsex=ServletActionContext.getRequest().getParameter("sex");

  java.util.Datedate=newjava.util.Date();

       Stringtime="";

       SimpleDateFormats=newSimpleDateFormat("yyyy年-MM月dd日-HH:

mm:

ss");

       time=s.format(date);

  //如果输出是乱码的话,就要转码了

  System.out.println(name+sex+time);

  Connectionconn=DBcon.getConnection();

  Statementstmt=null;

  try{

   stmt=conn.createStatement();

   Stringsql="insertintodep(name,sex,time)values('"+name+"','"+sex+"','"+time+"')";

   inti=stmt.executeUpdate(sql);

   if(i==0){

    System.out.println("添加失败");

   }else{

    System.out.println("添加成功");

   }

   conn.close();

   stmt.close();

  }catch(Exceptione){

   e.printStackTrace();

  }

  //return"add"; 如果你是返回这个,那么页面没有跟新到你新增的信息,所以在返回时要在查询一遍,也就是下面的方法

  returnquery();

 }

 

 //删除用户

 publicStringdel()throwsException{

  Stringid=ServletActionContext.getRequest().getParameter("id");

  System.out.println(id);

  inti=Integer.parseInt(id);

  Connectionconn=DBcon.getConnection();

  Statementstmt=null;

  try{

   stmt=conn.createStatement();

   Stringsql="delete fromdepwhereid="+i;

   

   inta=stmt.executeUpdate(sql);

   if(a==0){

    System.out.println("删除失败");

   }

   conn.close();

   stmt.close();

  }catch(Exceptione){

   e.printStackTrace();

  }

  returnquery();

 }

 //修改用户信息

 publicStringupdate()throwsException{

  //修改用户信息,首先要接收到要修改哪个用户的ID,然后返回给页面,给显示出该用户的所有信息

  Stringid=ServletActionContext.getRequest().getParameter("id");

  System.out.println(id);

  inti=Integer.parseInt(id);

  Connectionconn=DBcon.getConnection();

  Statementstmt=null;

  try{

   stmt=conn.createStatement();

   Stringsql="select* fromdepwhereid="+i;

   ResultSetrs=stmt.executeQuery(sql);

   Listlist=newArrayList();//new一个list

   while(rs.next()){

    depDtodt=newdepDto();//引进depDto

    dt.setId(rs.getInt("id"));

    dt.setName(rs.getString("name"));

    dt.setSex(rs.getString("sex"));

    dt.setTime(rs.getString("time"));

    list.add(dt);//把值添加到list里面

   }

   HttpSessionsession=ServletActionContext.getRequest()

     .getSession();

   session.setAttribute("list",list);

   conn.close();

   rs.close();

   stmt.close();

  }catch(Exceptione){

   e.printStackTrace();

  }

  return"update";

 }

 //接受修改页面传过来的值

 publicStringupdate1()throwsException{

  //我在这只接受sex,id如果没有ID的话,就会把全部更新了,不是我们想要的效果

  Stringsex=ServletActionContext.getRequest().getParameter("sex");

  Stringid=ServletActionContext.getRequest().getParameter("id");

  inti=Integer.parseInt(id);

  System.out.println(sex);

  Connectionconn=DBcon.getConnection();

  Statementstmt=null;

  try{

   stmt=conn.createStatement();

   Stringsql="updatedepsetsex='"+sex+"'whereid="+i;

   stmt.executeUpdate(sql);

   conn.close();

   stmt.close();

  }catch(Exceptione){

   e.printStackTrace();

  }

  returnquery();

 }

}

 

--------------------------------------------------------------depDto-------------------------------------------------------------------------------

depDto.java  代码

 

packagelaogen.dto;

publicclassdepDto{

 privateintid;

 privateStringname;

 privateStringsex;

 privateStringtime;

 //生成setting和getting 方法

 publicintgetId(){

  returnid;

 }

 publicvoidsetId(intid){

  this.id=id;

 }

 publicStringgetName(){

  returnname;

 }

 publicvoidsetName(Stringname){

  this.name=name;

 }

 publicStringgetSex(){

  returnsex;

 }

 publicvoidsetSex(Stringsex){

  this.sex=sex;

 }

 publicStringgetTime(){

  returntime;

 }

 publicvoidsetTime(Stringtime){

  this.time=time;

 }

 

}

 2.-------------------------------类写好了,就要配置好struts.xml-------------------------------

xmlversion="1.0"encoding="UTF-8"?

>

DOCTYPEstrutsPUBLIC"-//ApacheSoftwareFoundation//DTDStrutsConfiguration2.1//EN""http:

//struts.apache.org/dtds/struts-2.1.dtd">

 

 

  /index.jsp

  

--/query.jsp-->

  

  /query.jsp

  /query.jsp

  /update.jsp

 

 

    

 

 

3.------------------------------------------------接着就是页面显示代码和添加页面的代码了----------------------------------------------------

   ------简要说明下,这里是使用了struts2的iterator来循环输出,"#session.listAll" 是从action类传回来的listAll-------

query.jsp 页面代码

 

<%@pagelanguage="java"pageEncoding="UTF-8"%>

<%@tagliburi="/struts-tags"prefix="s"%>

DOCTYPEHTMLPUBLIC"-//W3C//DTDHTML4.01Transitional//EN">

    

   查询所以信息界面

   

 

 

 

 

 

 用户信息

 

 

 number

 name

 sex

 operate

   

 

  

iteratorvalue="#session.listAll"status="status">

  

  

propertyvalue="#status.index+1"/>

  

propertyvalue="name"/>

  

propertyvalue="sex"/>

  

update.action?

id='+

propertyvalue="id"/>">

  

propertyvalue="name"/>]吗?

')==true){window.location.href='login!

del.action?

id='+

propertyvalue="id"/>}">

 

  

    

iterator>

    

-----------------------------------------------------------------------------

add.jsp 页面代码

<%@pagelanguage="java"import="java.util.*"pageEncoding="utf-8"%>

<%@taglibprefix="s"uri="/struts-tags"%>

DOCTYPEHTMLPUBLIC"-//W3C//DTDHTML4.01Transitional//EN">

 

  增加员工

  

  

 

 

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 自然科学 > 物理

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1