java web的三大框架_Eclipse/JavaWeb (一)三大框架之struts框架 持续更新中...

最近主要把javaweb的三大框架过一遍。

(一)发展历史

传统的Java Web应用程序是采用JSP+Servlet+Javabean来实现的,这种模式实现了最基本的MVC分层,使得程序分为几层,有负责前台展示的jsp、负责流程逻辑控制的servlet一级负责数据封装的Javabean。但是这种结构仍然存在问题:如JSP页面中需要使用符号嵌入很多的java代码,造成页面结构混乱,servlet和javabean负责了大量的跳转和运算工作,耦合紧密,程序复用率低等等。

Struts

为了解决以上问题,出现了Struts框架,他是一个完美的MVC实现,他有一个中央控制类(一个servlet),一个action类负责页面跳转和后台逻辑运算,一个或几个jsp页面负责数据的输入和输出显示,还有一个form类负责传递action和jsp中间的数据。jsp中可以使用struts框架提供的一组标签,就像使用html标签一样简单,但是可以完成非常复杂的逻辑。从此jsp页面中不需要出现一行包围的java代码了。

可是所有的运算逻辑都放在struts的action里将使得action类复用率低和逻辑混乱,所以通常人们会把整个web应用程序分为三层,struts负责显示层,它调用业务层完成运算逻辑。从此jsp页面中不需要出现一行包围的java代码了。

(二)小例子

这里简单介绍个关于struts框架的小例子。

首先,eclipse for java ee 工具,官网下载。

然后,struts2包,下载地址:http://www.pc6.com/softview/SoftView_108615.html

进一步,在eclipse中新建dynamic web project,填写project name,其他默认如下图:

9ad29bdb3805b109f2d2bbb583054c26.png

下一步,填写编译输出路径,默认为build\classes,可以改可以不改,默认即可。

下一步,勾选生成web.xml文件,finish。

一个dynamic web project就生成了,接下来加入相应jsp,action文件。

解压struts包,把其中struts-2.3.15.1\lib下的几个包拷贝到工程的WebContent/WEB-INF/lib目录下,工程结构如下:

c200dc0f7aedca084d31204b495193b5.png

根据需要拷贝你需要的jar包到lib包下,然后改写web.xml文件:

Login

struts2

org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter

struts2

/*

Login.jsp

首页默认为Login.jsp。配置struts.xml文件,在src文件下创建struts.xml文件:

/p>

"http://struts.apache.org/dtds/struts-2.0.dtd">

success.jsp

Login.jsp

注:struts.xml文件一定创建在src目录下,创建的web project默认src包在Java Resources下,而不在WebContent/WEB-INF下。

在src下新建一个包action,在action下创建LoginAction.java文件:

packageaction;importcom.opensymphony.xwork2.ActionSupport;public class LoginAction extendsActionSupport{private static final long serialVersionUID = 1L;publicString loginName,password,message;public String execute() throwsException

{

System.out.println("username:"+loginName+"; password:"+password);if ("admin".equals(loginName)&&"admin".equals(password)) {

message=loginName+" Login Success!";

}else{

message=loginName+" Login Failed!";returnINPUT;

}returnSUCCESS;

}publicString getLoginName() {returnloginName;

}public voidsetLoginName(String loginName) {this.loginName =loginName;

}publicString getPassword() {returnpassword;

}public voidsetPassword(String password) {this.password =password;

}

}

在WebContent目录下创建Lgin.jsp和success.jsp文件:

Login.jsp:

Login
${requestScope.message }

success.jsp:

Success

然后运行,输入正确的用户名和密码:admin admin 提交

5a9f2f2a92629975ea44a6128942bf2b.png

38f0ab589dc07ad3fdda434d7f8d68c3.png

输入错误的用户名和密码,提交:

18e5e0c06904ff999f5bc61d380e27e6.png

登陆模块算是简单的完成。

(三)。。。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值