首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > Mysql >

用Struts2+MySQL作的名片管理系统

2012-11-03 
用Struts2+MySQL做的名片管理系统?package com.javaeye.rennyit.cardms.mainimport java.util.Listimpor

用Struts2+MySQL做的名片管理系统

?

package com.javaeye.rennyit.cardms.main;import java.util.List;import java.util.Map;import org.apache.struts2.ServletActionContext;//import com.opensymphony.xwork2.ActionContext;import com.javaeye.rennyit.cardms.db.CardDAO;import com.javaeye.rennyit.cardms.db.ClassDAO;import com.javaeye.rennyit.cardms.db.UserDAO;import com.opensymphony.xwork2.ActionSupport;//public class UserAction {public class UserAction extends ActionSupport {private static final long serialVersionUID = 1L;private String userName;private String password;public String getUserName() { return userName; }public void setUserName(String userName) {this.userName = userName;}public String getPassword() { return password; }public void setPassword(String password) {this.password = password;}/** * 实现登录信息校验 */public void validateLogin() {if(!UserDAO.isExist(userName, password)) {System.out.println("帐号或密码错误");addFieldError("userName", "帐号或密码错误");}}/** * 登录到系统的判断方法, 实现相关信息的保存到session中 * @return */public String login() {//将登录成功的信息放到Session中//用ActionContext实现/*ActionContext ac = ActionContext.getContext(); Map<String,Object> sessionMap = ac.getSession();sessionMap.put("userName", userName);sessionMap.put("password", password);*///用ServletActionContext实现//将用户的登录信息放入到session中Map<String,Object> session = ServletActionContext.getContext().getSession();session.put("userName", userName);session.put("password", password);//将用户所有的联系人类别名字保存到session中List<String> classNameList = null;classNameList = ClassDAO.getClassNames(userName);session.put("classNameList", classNameList);//将用户所有的联系人类别信息保存到session中List<ClassAction> classList = null;classList = ClassDAO.getClasses(userName);session.put("classList", classList);//将该用户的联系人信息添加到session中List<CardAction> cardList = null;cardList = CardDAO.queryCard(userName);session.put("cardList", cardList);/*int cardNum = cardList.size();System.out.println("Card Number:"+cardNum);for(int i = 0; i < cardNum; i++) {System.out.println(cardList.get(i).getCardId());System.out.println(cardList.get(i).getUserName());System.out.println(cardList.get(i).getName());System.out.println(cardList.get(i).getTel());System.out.println(cardList.get(i).getAddress());}*/return SUCCESS;}/** * 实现注册时信息的检验 */public void validateRegister() {String regUserName = ServletActionContext.getRequest().getParameter("userName");String regPsw = ServletActionContext.getRequest().getParameter("password");String regPswCon = ServletActionContext.getRequest().getParameter("pswConfirm");if(regUserName.equals(""))addFieldError("userName","用户名不能为空");else if(!regPsw.equals(regPswCon))addFieldError("password","两次输入密码不一致");else if(UserDAO.isExist(regUserName))addFieldError("userName","该用户名已存在");}/** * 注册用户登录帐号的方法 * @return */public String register() {String regUserName = ServletActionContext.getRequest().getParameter("userName");String regPsw = ServletActionContext.getRequest().getParameter("password");UserDAO.addUser(regUserName,regPsw);Map<String,Object> session = ServletActionContext.getContext().getSession();session.put("userName", regUserName);session.put("password", regPsw);return SUCCESS;}/* * test this class */public static void main(String[] args) {UserAction test = new UserAction();test.setUserName("rennyit");test.setPassword("rennyit");//System.out.println(test.execute());}}

?

如果有必要,可以将整个项目都打包传上来,强烈欢迎大家帮我指正,提出宝贵的意见,谢谢

1 楼 toeo 2009-04-03   #  /**
#      * 实现注册时信息的检验
#      */ 
#     public void validateRegister() { 
#         String regUserName = ServletActionContext.getRequest(). 
#             getParameter("userName"); 
#         String regPsw = ServletActionContext.getRequest().getParameter("password"); 
#         String regPswCon = ServletActionContext.getRequest(). 
#             getParameter("pswConfirm");  
#         if(regUserName.equals("")) 
#             addFieldError("userName","用户名不能为空"); 
#         else if(!regPsw.equals(regPswCon)) 
#             addFieldError("password","两次输入密码不一致"); 
#         else if(UserDAO.isExist(regUserName)) 
#             addFieldError("userName","该用户名已存在"); 
#     } 
#      

这个代码不用吧...

struts2 的 ActionSupport下面不是有个validation的方法么..?

你把他重写下...
#   private String userName; 
#     private String password; 

这个两个不是在这个类下面的方法么???不用从request里面取得... 2 楼 zhanger 2009-04-03   toeo 写道
这个代码不用吧...struts2 的 ActionSupport下面不是有个validation的方法么..?你把他重写下...#&nbsp;&nbsp; private String userName;&nbsp; #&nbsp;&nbsp;&nbsp;&nbsp; private String password;&nbsp; 这个两个不是在这个类下面的方法么???不用从request里面取得...

首先非常谢谢你帮我指出问题。
如果现在再写的话,确实不用了,当时写的时候都是自己摸着写的,所以有些问题就。。。
validate那个方法是个通用的校验方法,也就是说在login跟register中提交的数据都会被用相同的方法检验,这样应该是不合要求的
后来知道客户端的校验可以通过js来实现
后面那个我确实是用错了,完全没理解问题
自己是学生,然后尝试着学下struts2,错误的地方请多多指正

热点排行