代码如下ackage cn.itcast.domain;import java.util.Date;public class User {
private String id;
private String username;
private String password;
private String email;
private Date birthday;
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
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 String getEmail() {
return email;
}
public void setEmail(String email) {
this.email = email;
}
public Date getBirthday() {
return birthday;
}
public void setBirthday(Date birthday) {
this.birthday = birthday;
}
}
package cn.itcast.dao;import cn.itcast.domain.User;public interface UserDao { User find(String username, String password); void add(User user); User find(String username);}ackage cn.itcast.dao.impl;import java.text.SimpleDateFormat;import org.dom4j.Document;
import org.dom4j.Element;import cn.itcast.dao.UserDao;
import cn.itcast.domain.User;
import cn.itcast.utils.XmlUtils;//根据业务需求来
public class UserDaoXmlImpl implements UserDao { public User find(String username,String password){
try{
Document document = XmlUtils.getDocument();
Element e = (Element) document.selectSingleNode("//user[@username='"+username+"' and @password='"+password+"']");
if(e==null){
return null;
}
User user = new User();
user.setId(e.attributeValue("id"));
user.setEmail(e.attributeValue("email"));
user.setPassword(e.attributeValue("password"));
user.setUsername(e.attributeValue("username"));
String birth = e.attributeValue("birthday");
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
user.setBirthday(sdf.parse(birth));
return user;
}catch (Exception e) {
throw new RuntimeException(e);
}
}
public void add(User user){
try{
Document document = XmlUtils.getDocument();
Element root = document.getRootElement();
Element user_node = root.addElement("user"); //创建user结点,并挂到root
user_node.setAttributeValue("id", user.getId());
user_node.setAttributeValue("username", user.getUsername());
user_node.setAttributeValue("password", user.getPassword());
user_node.setAttributeValue("email", user.getEmail());
user_node.setAttributeValue("birthday", user.getBirthday().toLocaleString());
XmlUtils.write2Xml(document);
}catch (Exception e) {
throw new RuntimeException(e);
}
}
public User find(String username){
try{
Document document = XmlUtils.getDocument();
Element e = (Element) document.selectSingleNode("//user[@username='"+username+"']");
if(e==null){
return null;
}
User user = new User();
user.setId(e.attributeValue("id"));
user.setEmail(e.attributeValue("email"));
user.setPassword(e.attributeValue("password"));
user.setUsername(e.attributeValue("username"));
String birth = e.attributeValue("birthday");
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
user.setBirthday(sdf.parse(birth));
return user;
}catch (Exception e) {
throw new RuntimeException(e);
}
}
}
package cn.itcast.utils;import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.UnsupportedEncodingException;
import java.net.URL;import org.dom4j.Document;
import org.dom4j.DocumentException;
import org.dom4j.io.OutputFormat;
import org.dom4j.io.SAXReader;
import org.dom4j.io.XMLWriter;public class XmlUtils {
private static String filename = "users.xml";
public static Document getDocument() throws DocumentException{
URL url = XmlUtils.class.getClassLoader().getResource(filename);
String realpath = url.getPath();
SAXReader reader = new SAXReader();
return reader.read(new File(realpath));
}
public static void write2Xml(Document document) throws IOException{
URL url = XmlUtils.class.getClassLoader().getResource(filename);
String realpath = url.getPath();
OutputFormat format = OutputFormat.createPrettyPrint();
XMLWriter writer = new XMLWriter(new FileOutputStream(realpath), format );
writer.write( document );
writer.close(); }
}
package cn.itcast.service;import cn.itcast.domain.User;
import cn.itcast.exception.UserExistException;public interface BusinessService {
void registerUser(User user) throws UserExistException; User loginUser(String username, String password);
ackage cn.itcast.service.impl;import cn.itcast.dao.UserDao;
import cn.itcast.dao.impl.UserDaoJdbcImpl;
import cn.itcast.dao.impl.UserDaoXmlImpl;
import cn.itcast.domain.User;
import cn.itcast.exception.UserExistException;
import cn.itcast.service.BusinessService;//根据需求来
public class BusinessServiceImpl implements BusinessService { UserDao dao = new UserDaoJdbcImpl();
//提供注册服务
public void registerUser(User user) throws UserExistException{
if(dao.find(user.getUsername())!=null){
//checked exception
//unchecked exception
//这里抛编译时异常的原因:是我想上一层程序处理这个异常,以给用户一个友好提示
throw new UserExistException("注册的用户名已存在!!!");
}
dao.add(user);
}
public User loginUser(String username,String password){
return dao.find(username, password);
}
}}谁给我讲讲啊 我看着自己头都晕了 不知道应该怎么办啊 各位朋友 讲讲吧
private String id;
private String username;
private String password;
private String email;
private Date birthday;
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
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 String getEmail() {
return email;
}
public void setEmail(String email) {
this.email = email;
}
public Date getBirthday() {
return birthday;
}
public void setBirthday(Date birthday) {
this.birthday = birthday;
}
}
package cn.itcast.dao;import cn.itcast.domain.User;public interface UserDao { User find(String username, String password); void add(User user); User find(String username);}ackage cn.itcast.dao.impl;import java.text.SimpleDateFormat;import org.dom4j.Document;
import org.dom4j.Element;import cn.itcast.dao.UserDao;
import cn.itcast.domain.User;
import cn.itcast.utils.XmlUtils;//根据业务需求来
public class UserDaoXmlImpl implements UserDao { public User find(String username,String password){
try{
Document document = XmlUtils.getDocument();
Element e = (Element) document.selectSingleNode("//user[@username='"+username+"' and @password='"+password+"']");
if(e==null){
return null;
}
User user = new User();
user.setId(e.attributeValue("id"));
user.setEmail(e.attributeValue("email"));
user.setPassword(e.attributeValue("password"));
user.setUsername(e.attributeValue("username"));
String birth = e.attributeValue("birthday");
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
user.setBirthday(sdf.parse(birth));
return user;
}catch (Exception e) {
throw new RuntimeException(e);
}
}
public void add(User user){
try{
Document document = XmlUtils.getDocument();
Element root = document.getRootElement();
Element user_node = root.addElement("user"); //创建user结点,并挂到root
user_node.setAttributeValue("id", user.getId());
user_node.setAttributeValue("username", user.getUsername());
user_node.setAttributeValue("password", user.getPassword());
user_node.setAttributeValue("email", user.getEmail());
user_node.setAttributeValue("birthday", user.getBirthday().toLocaleString());
XmlUtils.write2Xml(document);
}catch (Exception e) {
throw new RuntimeException(e);
}
}
public User find(String username){
try{
Document document = XmlUtils.getDocument();
Element e = (Element) document.selectSingleNode("//user[@username='"+username+"']");
if(e==null){
return null;
}
User user = new User();
user.setId(e.attributeValue("id"));
user.setEmail(e.attributeValue("email"));
user.setPassword(e.attributeValue("password"));
user.setUsername(e.attributeValue("username"));
String birth = e.attributeValue("birthday");
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
user.setBirthday(sdf.parse(birth));
return user;
}catch (Exception e) {
throw new RuntimeException(e);
}
}
}
package cn.itcast.utils;import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.UnsupportedEncodingException;
import java.net.URL;import org.dom4j.Document;
import org.dom4j.DocumentException;
import org.dom4j.io.OutputFormat;
import org.dom4j.io.SAXReader;
import org.dom4j.io.XMLWriter;public class XmlUtils {
private static String filename = "users.xml";
public static Document getDocument() throws DocumentException{
URL url = XmlUtils.class.getClassLoader().getResource(filename);
String realpath = url.getPath();
SAXReader reader = new SAXReader();
return reader.read(new File(realpath));
}
public static void write2Xml(Document document) throws IOException{
URL url = XmlUtils.class.getClassLoader().getResource(filename);
String realpath = url.getPath();
OutputFormat format = OutputFormat.createPrettyPrint();
XMLWriter writer = new XMLWriter(new FileOutputStream(realpath), format );
writer.write( document );
writer.close(); }
}
package cn.itcast.service;import cn.itcast.domain.User;
import cn.itcast.exception.UserExistException;public interface BusinessService {
void registerUser(User user) throws UserExistException; User loginUser(String username, String password);
ackage cn.itcast.service.impl;import cn.itcast.dao.UserDao;
import cn.itcast.dao.impl.UserDaoJdbcImpl;
import cn.itcast.dao.impl.UserDaoXmlImpl;
import cn.itcast.domain.User;
import cn.itcast.exception.UserExistException;
import cn.itcast.service.BusinessService;//根据需求来
public class BusinessServiceImpl implements BusinessService { UserDao dao = new UserDaoJdbcImpl();
//提供注册服务
public void registerUser(User user) throws UserExistException{
if(dao.find(user.getUsername())!=null){
//checked exception
//unchecked exception
//这里抛编译时异常的原因:是我想上一层程序处理这个异常,以给用户一个友好提示
throw new UserExistException("注册的用户名已存在!!!");
}
dao.add(user);
}
public User loginUser(String username,String password){
return dao.find(username, password);
}
}}谁给我讲讲啊 我看着自己头都晕了 不知道应该怎么办啊 各位朋友 讲讲吧
解决方案 »
- HibernateXML文件改成注释,最后一个怎么写?
- 高手请进,关于Tomcat+Jsp+Eclipse链接mysql数据库
- 为什么会报missing value from resource file SEC_007 - check classpath的错误
- 比坐飞机还急:EJB客户端和DLL的集成 §§§§立即给100分
- 关于工作流和shark的问题
- hibernate访问数据库的问题(远程同步),同志们帮忙看看
- 初学STRUTS问题,STRUTS如何连接access的数据源
- 谁能告诉我哪里有struts标记库的使用文档啊 ?
- Java连接oracle8.16出问题,请帮忙解决!
- 请问这个图是什么问题?eclipse,版本是对的啊!
- 谁能教我搭建三大框架呢
- 定义MVC的时候 为什么老定义类BusinessService这个类 还有为什么要定义代理类 谁举个例子给我讲讲啊 谢谢
这个系统是我最近整的,你可以参考参考。有问题可以跟我联系,祝你好运!