Struts2+DAO下的开发流程
2014-03-03 13:50
381 查看
这里撇开Spring和Hibernate不谈,直接在Struts2下使用DAO封装数据库操作,进行简单的数据库访问操作。实现的效果大致是在初始页面输入一个需要查询的人名,然后访问数据库,将查询到的结果返回给结果页面。本篇博文仅呈现一个大致的流程,并不给出具体的解释。
大致的效果如下两幅图显示:
![](http://img.blog.csdn.net/20140303133508812?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvdGFvX3N1bg==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
![](http://img.blog.csdn.net/20140303133519937?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvdGFvX3N1bg==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
项目实现流程:
1. 源代码包安排:
action 动作包
dao DAO包
dao.impl DAO接口的实现类包
entity 实体包
util 工具包(数据库访问工作类等,这里不展示)
2. 数据库中的内容如下
![](http://img.blog.csdn.net/20140303133907500?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvdGFvX3N1bg==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
3. 封装admin表——User.java类
4. DAO接口——User相关的数据库访问操作
5. 实现DAO接口——实现具体的业务方法
6. 建立两个视图页面 namequery.jsp 和 dbresult.jsp
namequery.jsp 核心内容
dbresult.jsp核心内容
7.在struts.xml中注册相应的Action
8.实现动作的实现类CheckDB.java
大致的效果如下两幅图显示:
项目实现流程:
1. 源代码包安排:
action 动作包
dao DAO包
dao.impl DAO接口的实现类包
entity 实体包
util 工具包(数据库访问工作类等,这里不展示)
2. 数据库中的内容如下
3. 封装admin表——User.java类
public class User { private int id; private String name; private String password; getter/setter }
4. DAO接口——User相关的数据库访问操作
import cn.myseu.entity.User; public interface UserDao { public User query(String name); }
5. 实现DAO接口——实现具体的业务方法
public class UserDaoImpl implements UserDao { @Override public User query(String name) { String sql = "select * from admin where name=?"; Connection conn = DBUtil.getConn(); PreparedStatement pstmt; try { pstmt = conn.prepareStatement(sql); pstmt.setString(1,name); ResultSet rs = pstmt.executeQuery(); if (rs.next()) { int id = rs.getInt("id"); String password = rs.getString("password"); User user = new User(); user.setId(id); user.setName(name); user.setPassword(password); return user; } } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } return null; } }
6. 建立两个视图页面 namequery.jsp 和 dbresult.jsp
namequery.jsp 核心内容
<%@ page contentType="text/html; charset=UTF-8"%> <%@ taglib prefix="s" uri="/struts-tags"%> <html> <head> <title>DBTest</title> </head> <body> <hr> <h3>Who do you want to check</h3> <h4>Input the name:</h4> <s:form action="CheckDB"> <s:textfield name="name" label="Your name" /> <s:submit /> </s:form> </body> </html>
dbresult.jsp核心内容
<body> <h4>Checking results:</h4> <h2><s:property value="queryResult" /></h2> </body>
7.在struts.xml中注册相应的Action
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN" "http://struts.apache.org/dtds/struts-2.0.dtd"> <struts> <constant name="struts.devMode" value="true" /> <package name="default" namespace="/" extends="struts-default"> <action name="QueryResult"> <result>/namequery.jsp</result> </action> <action name="CheckDB" class="cn.myseu.action.CheckDB"> <result name="SUCCESS">/dbresult.jsp</result> </action> </package> </struts>
8.实现动作的实现类CheckDB.java
public class CheckDB{ public String execute() throws Exception { setQueryResult(query(getName())); return "SUCCESS"; } private String query(String name){ UserDao dao = new UserDaoImpl(); User user = dao.query(name); return "name:"+user.getName()+" password:"+user.getPassword(); } private String name; private String queryResult; public String getQueryResult() { return queryResult; } public void setQueryResult(String queryResult) { this.queryResult = queryResult; } public String getName() { return name; } public void setName(String name) { this.name = name; } }
相关文章推荐
- 敏捷开发流程总结
- OSGI(Felix)项目开发和持续集成流程
- wince +arm 开发流程
- iOS开发-从注册账号到应用发布流程
- EAS BOS开发EditUI、ListUI添加审核反审核操作流程
- Vuforia SDK---- AR开发vuforia cylinder Target识别图制作流程
- 软件项目开发流程
- 开发流程
- Visual Studio 2010中敏捷开发流程模板的应用
- AAtitit 项目管理 提升开发效率的项目流程方法模型 哑铃型 橄榄型 直板型titi
- 使用 WebSphere 工具开发业务流程门户应用程序(Portal+Workflow)
- ESTBPM3-Activiti5在线流程设计器开发
- fir.im Weekly - iOS开发中的Git流程
- Discuz!开发之会员登录流程解析
- 第4章 ISE开发环境使用指南[FPGA开发实用教程]——第3节 基于ISE的开发流程
- windowCE_BSP开发 ppt wince 的启动流程
- WinPcap开发的一些流程
- IOS项目目录结构和开发流程【极具参考价值!】
- 开发流程
- 初学rails对开发流程的理解