从网上看到一个开源的web项目-校园宿舍管理系统,大致看了一下源码,框架很简单,用的struts2+jdbc+jsp,虽然作为一个很简单的项目,但对于新手来说,直接看一套系统的源码,很快就会失去兴趣,本人作为一个新人过来很理解这种感受,因此对于这套系统,我准备将他重新翻写一遍,顺便将技术框架修改一下以便自己提高一下自己技术,在这里分享一下重新搭建项目的过程。
主体框架不动,仍用struts2,持久层方面我准备用mybatis,数据库用oracle11g。
废话不多说,直接开干!
首先创建一个Dynamic Web project项目,项目名称StudentsDormitoryManager。
WEB-INF下创建web.xml项目,集成Struts2(不要忘记struts2的必要的jar包),这东西是固定的,有兴趣研究Struts2的请求过程。
<?xml version="1.0" encoding="UTF-8"?> <web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"> <filter> <filter-name>struts2</filter-name> <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class> </filter> <filter-mapping> <filter-name>struts2</filter-name> <url-pattern>*.action</url-pattern> </filter-mapping> </web-app>
首先思考一个系统我们首先需要去做什么,那就是登录,针对于登录,最重要的是权限控制,只有我们将登录过程设计好了其他功能,都只是按模块加入系统中罢了。
这套开源的宿舍管理系统权限相对来说比较简单,就是在登录页面设置下拉框,用户选择自己的角色,后台根据角色到不同的角色账号表查找用户,根据查找结果返回登录是否成功。
首先我们要设置项目启动进入首页Login.jsp,在web.xml中添加,在WebContent下创建Login.jsp页面
<welcome-file-list> <welcome-file>/Login.jsp</welcome-file> </welcome-file-list>
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> <% String path = request.getContextPath(); String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/"; %> <%@ taglib prefix="s" uri="/struts-tags"%> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <base href="<%=basePath%>"> <title>校园宿舍管理系统</title> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <link href="Style/Style.css" rel="stylesheet" type="text/css" /> </head> <script language="JavaScript"> function mycheck(){ if(isNull(form1.Type.value)){ alert("请选择身份!"); return false; } if(isNull(form1.Username.value)){ alert("请输入用户名!"); return false; } if(isNull(form1.Password.value)){ alert("请输入密码!"); return false; } } function isNull(str){ if ( str == "" ) return true; var regu = "^[ ]+$"; var re = new RegExp(regu); return re.test(str); } </script> <body> <center> <br><br><br><br><br> <table width="684" border="0" cellspacing="0" cellpadding="0"> <tr> <td height="292" align="center" valign="top" background="Images/LoginBg.jpg"> <table width="350" height="201" border="0" cellpadding="0" cellspacing="0"> <tr> <td height="72" align="center"><h3>校园宿舍管理系统</h3></td> </tr> <tr> <td align="center" valign="top"> <form name="form1" action="GoLogin.action" method="post" onSubmit="return mycheck()"> <table width="100%" border="0" cellspacing="0" cellpadding="0"> <tr> <td height="30" colspan="2" align="center" class="STYLE2"><span style="color:red;"> <%if(request.getAttribute("Msg")!=null){%> <%=request.getAttribute("Msg")%> <%}%> </span></td> </tr> <tr> <td height="30" align="right" class="STYLE2">身份:</td> <td align="left"><select name="Type" id="Type"> <option value="">请选择</option> <option value="系统管理员">系统管理员</option> <option value="楼宇管理员">楼宇管理员</option> <option value="学生">学生</option> </select></td> </tr> <tr> <td width="37%" height="30" align="right" class="STYLE2">用户名:</td> <td width="300" align="left"><input type="text" name="Username" id="Username" class="text1" /></td> </tr> <tr> <td height="30" align="right" class="STYLE2">密码:</td> <td align="left"><input type="password" name="Password" id="Password" class="text1" /></td> </tr> <tr> <td height="30" colspan="2" align="center"><label> <input type="submit" name="button" id="button" value="登录"> </label></td> </tr> </table> </form> </td> </tr> </table></td> </tr> </table> </center> </body> </html>
我不是搞前台的,所以关于源代码的图片以及css、jsp我基本是拿来用的(见附件),现在这个项目可以用tomcat运行一下,我们可以进入首页看一看,浏览器输入:http://localhost:端口/项目名称:
本文出自 “进击的程序猿” 博客,请务必保留此出处http://zangyanan.blog.51cto.com/11610700/1862762
原文:http://zangyanan.blog.51cto.com/11610700/1862762