学生信息管理系统----班级信息管理

嵌入班级信息到System页面

  这一部分要实现班级信息的相关操作。
  还是在名为servlet的package下创建一个显示班级列表的Servlet——ClazzServlet。这样取名字是避免与系统关键字class起冲突,以免出现不必要的麻烦。

public class ClazzServlet extends HttpServlet {
   
	public void doGet(HttpServletRequest req,HttpServletResponse res) throws IOException{
   
		doPost(req,res);
	}
	public void doPost(HttpServletRequest req,HttpServletResponse res){
   
	}
}

  接下来还是要在web.xml中对这个Servlet进行配置,建立与访问路径的一个映射。

<servlet>
  	<description>班级信息管理</description>
  	<servlet-name>ClazzServlet</servlet-name>
  	<servlet-class>com.ischoolbar.programmer.servlet.ClazzServlet</servlet-class>
</servlet>
<servlet-mapping>
  	<servlet-name>ClazzServlet</servlet-name>
  	<url-pattern>/ClazzServlet</url-pattern>
</servlet-mapping>

  第三步,我们打开素材文件,找到clazzList.jsp,将其复制到view目录下。
打开里面部分代码如下面所示,我们之前已经将左边的菜单栏布置好了,当用户点击菜单栏中的班级列表时,我们需要将clazzList.jsp在右边显示出来。

public class ClazzServlet extends HttpServlet {
   
	private static final long serialVersionUID = -7264164305513332635L;
	public void doGet(HttpServletRequest req,HttpServletResponse res) throws IOException{
   
		doPost(req,res);
	}
	public void doPost(HttpServletRequest req,HttpServletResponse res) throws IOException{
   
		String method = req.getParameter("method");
		if("toClazzListView".equals(method)){
   
			clazzList(req,res);
		}
	}
	private void clazzList(HttpServletRequest req, HttpServletResponse res) throws IOException {
   
		// TODO Auto-generated method stub
		try {
   
			req.getRequestDispatcher("view/clazzList.jsp").forward(req, res);
		} catch (ServletException e) {
   
			e.printStackTrace();
		}
	}

  从system.jsp中有这样一行代码,这个请求就是发往ClazzServlet的,并且传入了一个参数 toClazzListView,我们根据这个参数实现了请求转发。

{
   "menuid":"42","menuname":"班级列表","icon":"icon-house","url":"ClazzServlet?method=toClazzListView"},

  现在已经将班级列表页面,即clazzList.jsp能够动态的嵌入到System.jsp中了,打开clazzList.jsp,有这样的几行代码:功能是显示班级列表,通过传递getClazzList来显示班级列表。

    $('#dataList').datagrid({
    
    		....
    		....(部分代码省略)
	        method: "post",
	        // 给服务器发送请求
	        url:"ClazzServlet?method=getClazzList&t="+new Date().getTime(),
	        idField:'id', 
	        ....
	        ....(部分代码省略)
	})

  我们按照这里给出的url在ClazzServlet中进行参数的传递,ClazzServlet的doPost方法就成了下面的样子。我们通过调用的getClazzList()方法来显示从数据库中读取的数据。

	public void doPost(HttpServletRequest req,HttpServletResponse res) throws IOException{
   
		String method = req.getParameter("method");
		if("toClazzListView".equals(method)){
   
			clazzList(req,res);
		}else if("getClazzList".equals(method)){
   
			getClazzList(req, res);
		}
	}
读取数据库的信息

  但是我们还没有实现从数据库中读取列表的方法。
接下来我们要创建一个班级列表的model类——Clazz.java,并且附上相应的get和set方法。

public class Clazz {
   
	private int id;
	private String name;
	private String info;
	public int getId() {
   
		return id;
	}
	public void setId(int id) {
   
		this.id = id;
	}
	....(部分代码省略)
}

  有了model,我们就可以相应的在dao的package下创建一个dao——ClazzDao。
  我们还要根据显示的页面来实现数据的分页显示,在这之前我们创建一个Page的model,但是这个类并没有在数据库中对应存在的数据表,只是方便在分页的时候做处理。

public class Page {
   
	private int start;			// 起始页
	private int currentPage;	// 当前页
	private int pageSize;		// 每页显示的数量
	public Page(int curruntPage,int pageSize){
   
		this.start = (curruntPage-1)*pageSize;
		this.currentPage = curruntPage;
		this.pageSize = pageSize;
	}
	public int getStart() {
   
		return start;
	}
	....(部分代码省略)

  从这个类的的构造函数中可以看出,每一页的起始页都是当前的页数减一再乘以每一页的数目,这一点不难理解。
有了page之后,可以在ClazzDao中实现查询班级列表的方法。

	public List<Clazz> getClazzList(Clazz clazz,Page page){
   
		List<Clazz> ret = new ArrayList<Clazz>();
		String sql = "select * from s_clazz";
		if(!StringUtil.isEmpty(clazz.getName())){
   
			sql += " where name like '%" + clazz.getNam
资源非常丰富,包含了学生信息管理系统需求分析文档,软件详细设计文档,安装部署手册及源程序。开发工具:软件架构:web应用程序,采用struts2加hibernate加spring框架。开发平台:J2EE 功能实现: 前台主页描述:顶部和底部均为各版块的公共部分,提供了一些导航链接,很方便用户操作。 左侧栏为用户信息及其班级信息展板,左侧底部展板用户显示一些班级公告信息, 右侧包括班级相册,可以自动播放,也可手动播放,还有一些班级的最新留言。 主页面只显示了最新的三条,用户可以通过头部导航条中的留言或“查看更多”导航 进入全部留言区,这里将为用户按时间先后顺序陈列出了所有的班级留言。您也可以 点击主页留言处的“我要留言”而进行留言。 班级模块描述:通过班级,用户可以查询本班的其他同学的信息,并且可以对信息的显示顺序进行排序, 排序可以按学号,姓名,年龄条件,再选择排序方式,点击查询即可。 留言模块描述:留言主要是方便大家讨论用的,用户可以发表留言信息,但如果内容不文明不科学,管理员可以删除。 这里也需说明一下,这里的留言没有设置留言评论的,感觉对于班级信息系统来说,也没这个必要,用户 有什么话要说,尽管留言即可,不过如果硬要针对某个人进行留言的话,用户也可以在留言中说明一下 即行,也没什么不方便的。 公告模块描述:特别说明一下,原本想将公告和活动分开处理的,但目前由于时间问题,暂且放在一起了,也就是 公告与活动是同一内容,然而这样做感觉也还可以,说得过去,这里的公告是一些班级的公告信息, 主要是由后台管理员(可以说是班长或班主任等)来发布的,只有管理员才能够直接操作公告信息, 前台用户这里只能够查看,其实这样没什么不妥,反而便于管理,也更符合常情。 其他模块描述:收藏和注销只是两个小功能,收藏是为了方便用户将本网页保存起来,这样以后就不必输入网址了。 而注销是必不可少的,用户登录后,当想退出时,就可以安全注销了,如果你现在还不想退出的话, 就别点击它哦,否而得重新登录的喔,仅作提示。 后台主页包括顶部公共模块,底部公告模块,左侧导航栏,中间显示区。其中顶部公共模块中的“主菜单”能够便捷的打开左侧的导航栏,“前台主页”是后台管理员查看前台主页信息,“后台主页”打开后台相关介绍信息的页面(登录成功后的主页面),“发布公告”方便管理员打开班级公告页面,便于发布新的公告,“数据维护”包括数据库备份与恢复,“系统设置”主要涉及到一些本系统的设置信息,由于时间及精力有限,这两块先预留着,以后再好好完善扩展。那个蓝色小按钮是控制中间页面是否隐藏左侧导航栏用的,而那两个黑色小按钮用于移动显示框的。 左侧导航栏主要包括了管理员信息的增删改查,学生信息的增删改查,班级公告信息的增删改查,班级留言信息的查询与删除。管理员单击各导航链接进入到相应页面,进行操作即可。 前后台页面美观,操作方便,尤其配有平台搭建介绍文档,很容易搭建系统平台。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值