学生信息管理系统(jsp+servlet+中间件xml)

这个学期有门课叫“应用集成与数据集成”
要做一个学生信息管理系统,要求是有基本的增删改查功能,额外功能自选,要把jsp和servlet分开写,因为jsp是里面写的是脚本语言,不能调试。
另外要求所有信息都是数据库里面的,并且是2个数据库里面都有一个学生表,将合并显示在页面上,要用到中间件xml来完成。

关于系统的代码什么的我就不说了,网上有很多教程,推荐大家看这个:
http://www.readjava.cn/article/detail/34
不是做广告,我刚开始学的时候就是参考的这个。

这里把我对整个流程的一些心得罗列一下:

1,jsp不是js

JS:JavaScript 而 JSP:Java Server Pages,前者是做页面交互动画的,后者是需要解释编译,还要在服务器上比如tomcat才能运行。

2,网页制作的三要素是html + css + js

而我说的jsp+servlet做的是动态网页,其中servletervlet是.java文件,里面是控制流程,就像这样:

	protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        req.getRequestDispatcher("login.jsp").forward(req, resp);
    }
	protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        req.setCharacterEncoding("utf-8");//从网页获取到输入的信息
        String userName = req.getParameter("userName");
        String passWord = req.getParameter("passWord");
        boolean link = DbUtil.setlogin(userName, passWord);
        if(link) req.getRequestDispatcher("/list").forward(req, resp);
        else {
        	req.setAttribute("msg","用户名或密码错误,请检查后重新登陆!");
        	req.getRequestDispatcher("login.jsp").forward(req, resp);
        }	
    }

在这里面获取jsp页面传过来的信息,然后可以调用自己写的其他函数执行,把函数的返回值加以判断(比如删除是否成功),然后把信息再传给jsp页面(比如页面一行行显示数据库的内容)。

3,jsp和servlet理论上是多对多关系

就是多个servlet实现不同的功能,但他们的结果的形式是一样的,那么就可以用同一个jsp来显示,当然了,你不怕麻烦的话,一个servlet可以写好多功能(不是功能的具体执行内容,而是中间获取参数的等操作)。但这样不建议,比较建议一个或多个servlet对应一个jsp
jsp页面里面就是html代码,可以外链调用css,js等内容,不同之处在于jsp页面(后缀名.jsp)有<%内容 %>,叫做脚本片段,其中写的内容会翻译在Servlet的中,但写多了就变成了jsp和servlet混写了,这是极其不推荐的。

4,最后说一下中间件xml

如果没有中间件,要合并两个数据库里2张表的内容,那么你的sql语句得写 2份,每份里面都有表名,列名等等。那么问题在于,一旦你的数据库的表名,列名,或者属性有变,你就要改代码,这是很不安全且繁琐的,一般公司不允许这样做。
那么就用到xml,这时你的代码不用变,只需把xml改一下就好了,这就是实现与数据的分离。
那么关于xml的使用,就一句话:读文件,代码里面的信息都通过读文件来获取
提一下,我说的xml里面的内容是表=表名,列名等等,不包括元组的内容,描述元组的内容的xml不是用来做数据集成的。

感谢你读到了最后,日常记录心得体会是个好习惯,当你许久之后再看就能很快想起来了,谢谢大家。如果大家喜欢可以来找我学习探讨

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值