JAVA的SSH框架登录注册

Struts 的MVC设计模式可以使我们的逻辑变得很清晰,主要负责表示层的显示。

Spring 的IOC和AOP可以使我们的项目在最大限度上解藕。

hibernate的就是实体对象的持久化了, 数据库的封装。

 

 

 

项目截图:(代码是按照项目截图上传的,直接对号入座即可)

 

 

此次代码是在Eclipse下部署的SSH框架示例代码,所有代码的下载地址在文章最下方。

并且代码进过了Eclipse和MyEclpse以及IDEA的测试,只需要稍微修改下就可以随便转换使用。

 

接下来是贴出的代码:

 

package com.softeem.action;import com.opensymphony.xwork2.ActionSupport;
import com.softeem.pojo.User;
import com.softeem.service.UserService;public class LoginAction extends ActionSupport{private static final long serialVersionUID = 1L;private User user;// 注入Service,生成Set和Get方法private UserService userservice;public User getUser() {return user;}public void setUser(User user) {this.user = user;}public UserService getUserservice() {return userservice;}public void setUserservice(UserService userservice) {this.userservice = userservice;}@Overridepublic String execute() throws Exception {boolean flag = userservice.findUser(user);if(flag){// 如果登录成功,返回登录成功页面return SUCCESS;}else{// 否则,返回失败页面return INPUT;}}
}
package com.softeem.action;
import com.opensymphony.xwork2.ActionSupport;
import com.softeem.pojo.User;
import com.softeem.service.UserService;public class RegistAction extends ActionSupport{private static final long serialVersionUID = 1L;private User user;// 注入Service,生成SET和GET方法private UserService userservice;public User getUser() {return user;}public void setUser(User user) {this.user = user;}public UserService getUserservice() {return userservice;}public void setUserservice(UserService userservice) {this.userservice = userservice;}// execute方法  
    @Overridepublic String execute() throws Exception {this.userservice.saveUser(this.user);//注册成功,返回注册成功页面 return SUCCESS;}
}
package com.softeem.dao;import com.softeem.pojo.User;public interface UserDAO {// 声明增加和查找方法public void saveUser(User user);public User findUser(User user);
}
package com.softeem.dao.Impl;import java.util.List;
import org.springframework.orm.hibernate3.support.HibernateDaoSupport;
import com.softeem.dao.UserDAO;
import com.softeem.pojo.User;public class UserDAOImpl extends HibernateDaoSupport implements UserDAO{// 增加用户public void saveUser(User user){this.getHibernateTemplate().save(user);}// 查询验证用户是否存在public User findUser(User user){User firstuser = new User();// HQL查询语句String hql = "from User user where user.username='" + user.getUsername() + "' and user.password= '" + user.getPassword() + "'";// 将查询出的结果放到ListList<User> userlist = this.getHibernateTemplate().find(hql);// 判断是否有查询结果,换句话说就是判断用户是否存在if(userlist.size()>0){//取出查询结果的第一个值,理论上数据库是没有重复的用户信息firstuser = userlist.get(0);}return firstuser;}
}
package com.softeem.pojo;public class User {private int user_id;private String username;private String password;public int getUser_id() {return user_id;}public void setUser_id(int user_id) {this.user_id = user_id;}public String getUsername() {return username;}public void setUsername(String username) {this.username = username;}public String getPassword() {return password;}public void setPassword(String password) {this.password = password;}
}
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd"><hibernate-mapping><class name="com.softeem.pojo.User" table="user"><id name="user_id" type="java.lang.Integer" column="user_id"><!--  主键生成策略 --><generator class="increment"></generator></id><property name="username" type="string" column="username" length="50"></property><property name="password" type="string" column="password" length="50"></property></class>
</hibernate-mapping>
package com.softeem.service;import com.softeem.pojo.User;public interface UserService {// 声明增加和查找方法public void saveUser(User user);public boolean findUser(User user);
}
package com.softeem.service.Impl;import com.softeem.dao.UserDAO;
import com.softeem.pojo.User;
import com.softeem.service.UserService;public class UserServiceImpl implements UserService{// 注入DAO,生成GET和SET方法private UserDAO userdao;public UserDAO getUserdao() {return userdao;}public void setUserdao(UserDAO userdao) {this.userdao = userdao;}// 保存用户信息public void saveUser(User user){this.userdao.saveUser(user);}// 查找验证用户信息public boolean findUser(User user){User firstuser = this.userdao.findUser(user);// 在UserDAO查询中已经判断了只有当用户名和密码都存在时才返回firstuser  // 所以在这里只用判断firstuser里面用户名或者密码中的一个是否存在就可以了if(firstuser.getUsername()!=null){return true;}else{return false;}}
}
<?xml version='1.0' encoding='UTF-8'?>
<!DOCTYPE hibernate-configuration PUBLIC"-//Hibernate/Hibernate Configuration DTD 3.0//EN""http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd"><!-- Generated by MyEclipse Hibernate Tools. -->
<hibernate-configuration><session-factory></session-factory></hibernate-configuration>
<?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><package name="user" extends="struts-default"><!-- class="RegistAction"与applicationContext.xml中的id对应 --><action name="regist" class="RegistAction"><result>/RegistSuccess.jsp</result></action><action name="login" class="LoginAction"><result name="success">/success.jsp</result><result name="input">/input.jsp</result></action></package>
</struts>
<?xml version="1.0" encoding="UTF-8"?>
<beansxmlns="http://www.springframework.org/schema/beans"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd"><!-- dbcp连接池 --><bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource"><property name="driverClassName" value="com.mysql.jdbc.Driver"></property><property name="url" value="jdbc:mysql://localhost:3306/user"></property><property name="username" value="root"></property><property name="password" value="root"></property><!-- 最大连接数 --><property name="maxActive" value="100"></property><!-- 最大可空闲连接数 --><property name="maxIdle" value="30"></property><!-- 最大等待连接 --><property name="maxWait" value="500"></property><!-- 事务提交,true代表自动提交事物 --><property name="defaultAutoCommit" value="true"></property></bean><bean id="sessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean"><property name="dataSource" ref="dataSource"></property><property name="hibernateProperties"><props><prop key="hibernate.dialect">org.hibernate.dialect.MySQLDialect</prop><prop key="hibernate.show_sql">true</prop></props></property><property name="mappingResources"><list><value>com/softeem/pojo/User.hbm.xml</value></list></property></bean><bean id="UserDAO" class="com.softeem.dao.Impl.UserDAOImpl" scope="singleton"><property name="sessionFactory"><ref bean="sessionFactory"/></property></bean><bean id="UserService" class="com.softeem.service.Impl.UserServiceImpl"><property name="userdao" ref="UserDAO"></property></bean><bean id="RegistAction" class="com.softeem.action.RegistAction" scope="prototype"><property name="userservice" ref="UserService"></property></bean><bean id="LoginAction" class="com.softeem.action.LoginAction" scope="prototype"><property name="userservice" ref="UserService"></property></bean>
</beans>  
<?xml version="1.0" encoding="ISO-8859-1" ?>
<!DOCTYPE taglib PUBLIC "-//Sun Microsystems, Inc.//DTD JSP Tag Library 1.2//EN" "http://java.sun.com/dtd/web-jsptaglibrary_1_2.dtd"><taglib><tlib-version>2.0</tlib-version><jsp-version>1.2</jsp-version><short-name>form</short-name><uri>http://www.springframework.org/tags/form</uri><description>Spring Framework JSP Form Tag Library</description><!-- <form:form/> tag --><tag><name>form</name><tag-class>org.springframework.web.servlet.tags.form.FormTag</tag-class><body-content>JSP</body-content><description>Renders an HTML 'form' tag and exposes a binding path to inner tags for binding.</description><attribute><name>id</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Standard Attribute</description></attribute><attribute><name>name</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Standard Attribute - added for backwards compatibility cases</description></attribute><attribute><name>htmlEscape</name><required>false</required><rtexprvalue>true</rtexprvalue><description>Enable/disable HTML escaping of rendered values.</description></attribute><attribute><name>cssClass</name><required>false</required><rtexprvalue>true</rtexprvalue><description>Equivalent to "class" - HTML Optional Attribute</description></attribute><attribute><name>cssStyle</name><required>false</required><rtexprvalue>true</rtexprvalue><description>Equivalent to "style" - HTML Optional Attribute</description></attribute><attribute><name>lang</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Standard Attribute</description></attribute><attribute><name>title</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Standard Attribute</description></attribute><attribute><name>dir</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Standard Attribute</description></attribute><attribute><name>onclick</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Event Attribute</description></attribute><attribute><name>ondblclick</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Event Attribute</description></attribute><attribute><name>onmousedown</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Event Attribute</description></attribute><attribute><name>onmouseup</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Event Attribute</description></attribute><attribute><name>onmouseover</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Event Attribute</description></attribute><attribute><name>onmousemove</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Event Attribute</description></attribute><attribute><name>onmouseout</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Event Attribute</description></attribute><attribute><name>onkeypress</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Event Attribute</description></attribute><attribute><name>onkeyup</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Event Attribute</description></attribute><attribute><name>onkeydown</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Event Attribute</description></attribute><!-- Form specific attributes --><attribute><name>commandName</name><required>false</required><rtexprvalue>true</rtexprvalue><description>Name of the attribute under which the command name is exposed.Defaults to 'command'.</description></attribute><attribute><name>action</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Required Attribute</description></attribute><attribute><name>method</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Optional Attribute</description></attribute><attribute><name>enctype</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Optional Attribute</description></attribute><attribute><name>onsubmit</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Event Attribute</description></attribute><attribute><name>onreset</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Event Attribute</description></attribute></tag><!-- <form:input/> tag --><tag><name>input</name><tag-class>org.springframework.web.servlet.tags.form.InputTag</tag-class><body-content>empty</body-content><description>Renders an HTML 'input' tag with type 'text' using the bound value.</description><attribute><name>path</name><required>true</required><rtexprvalue>true</rtexprvalue><description>Path to property for data binding</description></attribute><attribute><name>id</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Standard Attribute</description></attribute><attribute><name>htmlEscape</name><required>false</required><rtexprvalue>true</rtexprvalue><description>Enable/disable HTML escaping of rendered values.</description></attribute><attribute><name>cssClass</name><required>false</required><rtexprvalue>true</rtexprvalue><description>Equivalent to "class" - HTML Optional Attribute</description></attribute><attribute><name>cssErrorClass</name><required>false</required><rtexprvalue>true</rtexprvalue><description>Equivalent to "class" - HTML Optional Attribute. Used when the bound field has errors.</description></attribute><attribute><name>cssStyle</name><required>false</required><rtexprvalue>true</rtexprvalue><description>Equivalent to "style" - HTML Optional Attribute</description></attribute><attribute><name>lang</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Standard Attribute</description></attribute><attribute><name>title</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Standard Attribute</description></attribute><attribute><name>dir</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Standard Attribute</description></attribute><attribute><name>tabindex</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Standard Attribute</description></attribute><attribute><name>disabled</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Optional Attribute. Setting the value of this attribute to 'true' (without the quotes) will disable the HTML element.</description></attribute><attribute><name>onclick</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Event Attribute</description></attribute><attribute><name>ondblclick</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Event Attribute</description></attribute><attribute><name>onmousedown</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Event Attribute</description></attribute><attribute><name>onmouseup</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Event Attribute</description></attribute><attribute><name>onmouseover</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Event Attribute</description></attribute><attribute><name>onmousemove</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Event Attribute</description></attribute><attribute><name>onmouseout</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Event Attribute</description></attribute><attribute><name>onkeypress</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Event Attribute</description></attribute><attribute><name>onkeyup</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Event Attribute</description></attribute><attribute><name>onkeydown</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Event Attribute</description></attribute><attribute><name>onfocus</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Event Attribute</description></attribute><attribute><name>onblur</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Event Attribute</description></attribute><attribute><name>onchange</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Event Attribute</description></attribute><attribute><name>accesskey</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Standard Attribute</description></attribute><!-- 'input(text)' specific attributes --><attribute><name>size</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Optional Attribute</description></attribute><attribute><name>maxlength</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Optional Attribute</description></attribute><attribute><name>alt</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Optional Attribute</description></attribute><attribute><name>onselect</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Event Attribute</description></attribute><attribute><name>readonly</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Optional Attribute. Setting the value of this attribute to 'true' (without the quotes) will make the HTML element readonly.</description></attribute><attribute><name>autocomplete</name><required>false</required><rtexprvalue>true</rtexprvalue><description>Common Optional Attribute</description></attribute></tag><!-- <form:password/> --><tag><name>password</name><tag-class>org.springframework.web.servlet.tags.form.PasswordInputTag</tag-class><body-content>empty</body-content><description>Renders an HTML 'input' tag with type 'password' using the bound value.</description><attribute><name>path</name><required>true</required><rtexprvalue>true</rtexprvalue><description>Path to property for data binding</description></attribute><attribute><name>id</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Standard Attribute</description></attribute><attribute><name>htmlEscape</name><required>false</required><rtexprvalue>true</rtexprvalue><description>Enable/disable HTML escaping of rendered values.</description></attribute><attribute><name>cssClass</name><required>false</required><rtexprvalue>true</rtexprvalue><description>Equivalent to "class" - HTML Optional Attribute</description></attribute><attribute><name>cssErrorClass</name><required>false</required><rtexprvalue>true</rtexprvalue><description>Equivalent to "class" - HTML Optional Attribute. Used when the bound field has errors.</description></attribute><attribute><name>cssStyle</name><required>false</required><rtexprvalue>true</rtexprvalue><description>Equivalent to "style" - HTML Optional Attribute</description></attribute><attribute><name>lang</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Standard Attribute</description></attribute><attribute><name>title</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Standard Attribute</description></attribute><attribute><name>dir</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Standard Attribute</description></attribute><attribute><name>tabindex</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Standard Attribute</description></attribute><attribute><name>disabled</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Optional Attribute. Setting the value of this attribute to 'true' (without the quotes) will disable the HTML element.</description></attribute><attribute><name>onclick</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Event Attribute</description></attribute><attribute><name>ondblclick</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Event Attribute</description></attribute><attribute><name>onmousedown</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Event Attribute</description></attribute><attribute><name>onmouseup</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Event Attribute</description></attribute><attribute><name>onmouseover</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Event Attribute</description></attribute><attribute><name>onmousemove</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Event Attribute</description></attribute><attribute><name>onmouseout</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Event Attribute</description></attribute><attribute><name>onkeypress</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Event Attribute</description></attribute><attribute><name>onkeyup</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Event Attribute</description></attribute><attribute><name>onkeydown</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Event Attribute</description></attribute><attribute><name>onfocus</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Event Attribute</description></attribute><attribute><name>onblur</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Event Attribute</description></attribute><attribute><name>onchange</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Event Attribute</description></attribute><attribute><name>accesskey</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Standard Attribute</description></attribute><!-- 'input(text)' specific attributes --><attribute><name>size</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Optional Attribute</description></attribute><attribute><name>maxlength</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Optional Attribute</description></attribute><attribute><name>alt</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Optional Attribute</description></attribute><attribute><name>onselect</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Event Attribute</description></attribute><attribute><name>readonly</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Optional Attribute. Setting the value of this attribute to 'true' (without the quotes) will make the HTML element readonly.</description></attribute><attribute><name>autocomplete</name><required>false</required><rtexprvalue>true</rtexprvalue><description>Common Optional Attribute</description></attribute><!-- 'input(password)' specific attributes --><attribute><name>showPassword</name><required>false</required><rtexprvalue>true</rtexprvalue><description>Is the password value to be shown? Defaults to false.</description></attribute></tag><!-- <form:hidden/> --><tag><name>hidden</name><tag-class>org.springframework.web.servlet.tags.form.HiddenInputTag</tag-class><body-content>empty</body-content><description>Renders an HTML 'input' tag with type 'hidden' using the bound value.</description><attribute><name>path</name><required>true</required><rtexprvalue>true</rtexprvalue><description>Path to property for data binding</description></attribute><attribute><name>id</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Standard Attribute</description></attribute><attribute><name>htmlEscape</name><required>false</required><rtexprvalue>true</rtexprvalue><description>Enable/disable HTML escaping of rendered values.</description></attribute></tag><!-- <form:select/> --><tag><name>select</name><tag-class>org.springframework.web.servlet.tags.form.SelectTag</tag-class><body-content>JSP</body-content><description>Renders an HTML 'select' element. Supports databinding to the selected option.</description><attribute><name>path</name><required>true</required><rtexprvalue>true</rtexprvalue><description>Path to property for data binding</description></attribute><attribute><name>id</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Standard Attribute</description></attribute><attribute><name>htmlEscape</name><required>false</required><rtexprvalue>true</rtexprvalue><description>Enable/disable HTML escaping of rendered values.</description></attribute><attribute><name>cssClass</name><required>false</required><rtexprvalue>true</rtexprvalue><description>Equivalent to "class" - HTML Optional Attribute</description></attribute><attribute><name>cssErrorClass</name><required>false</required><rtexprvalue>true</rtexprvalue><description>Equivalent to "class" - HTML Optional Attribute. Used when the bound field has errors.</description></attribute><attribute><name>cssStyle</name><required>false</required><rtexprvalue>true</rtexprvalue><description>Equivalent to "style" - HTML Optional Attribute</description></attribute><attribute><name>lang</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Standard Attribute</description></attribute><attribute><name>title</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Standard Attribute</description></attribute><attribute><name>dir</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Standard Attribute</description></attribute><attribute><name>tabindex</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Standard Attribute</description></attribute><attribute><name>disabled</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Optional Attribute. Setting the value of this attribute to 'true' (without the quotes) will disable the HTML element.</description></attribute><attribute><name>onclick</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Event Attribute</description></attribute><attribute><name>ondblclick</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Event Attribute</description></attribute><attribute><name>onmousedown</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Event Attribute</description></attribute><attribute><name>onmouseup</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Event Attribute</description></attribute><attribute><name>onmouseover</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Event Attribute</description></attribute><attribute><name>onmousemove</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Event Attribute</description></attribute><attribute><name>onmouseout</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Event Attribute</description></attribute><attribute><name>onkeypress</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Event Attribute</description></attribute><attribute><name>onkeyup</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Event Attribute</description></attribute><attribute><name>onkeydown</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Event Attribute</description></attribute><attribute><name>onfocus</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Event Attribute</description></attribute><attribute><name>onblur</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Event Attribute</description></attribute><attribute><name>onchange</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Event Attribute</description></attribute><attribute><name>accesskey</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Standard Attribute</description></attribute><!-- 'select' specific attributes --><attribute><name>items</name><required>false</required><rtexprvalue>true</rtexprvalue><description>The Collection, Map or array of objects used to generate the inner 'option' tags</description></attribute><attribute><name>itemValue</name><required>false</required><rtexprvalue>true</rtexprvalue><description>Name of the property mapped to 'value' attribute of the 'option' tag</description></attribute><attribute><name>itemLabel</name><required>false</required><rtexprvalue>true</rtexprvalue><description>Name of the property mapped to the inner text of the 'option' tag</description></attribute><attribute><name>size</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Optional Attribute</description></attribute><attribute><name>multiple</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Optional Attribute</description></attribute></tag><!-- <form:option/> --><tag><name>option</name><tag-class>org.springframework.web.servlet.tags.form.OptionTag</tag-class><body-content>JSP</body-content><description>Renders a single HTML 'option'. Sets 'selected' as appropriate based on bound value.</description><variable><name-given>value</name-given><variable-class>java.lang.Object</variable-class><description>The actual value bound to the 'value' attribute</description></variable><variable><name-given>displayValue</name-given><variable-class>java.lang.String</variable-class><description>The String representation of thr value bound to the 'value' attribute, taking into considerationany PropertyEditor associated with the enclosing 'select' tag.</description></variable><attribute><name>value</name><required>true</required><rtexprvalue>true</rtexprvalue><description>HTML Optional Attribute</description></attribute><attribute><name>label</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Optional Attribute</description></attribute><attribute><name>htmlEscape</name><required>false</required><rtexprvalue>true</rtexprvalue><description>Enable/disable HTML escaping of rendered values.</description></attribute><attribute><name>disabled</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Optional Attribute. Setting the value of this attribute to 'true' (without the quotes) will disable the HTML element.</description></attribute></tag><!-- <form:options/> --><tag><name>options</name><tag-class>org.springframework.web.servlet.tags.form.OptionsTag</tag-class><body-content>empty</body-content><description>Renders a list of HTML 'option' tags. Sets 'selected' as appropriate based on boundvalue.</description><attribute><name>items</name><required>true</required><rtexprvalue>true</rtexprvalue><description>The Collection, Map or array of objects used to generate the inner 'option' tags</description></attribute><attribute><name>itemValue</name><required>false</required><rtexprvalue>true</rtexprvalue><description>Name of the property mapped to 'value' attribute of the 'option' tag</description></attribute><attribute><name>itemLabel</name><required>false</required><rtexprvalue>true</rtexprvalue><description>Name of the property mapped to the inner text of the 'option' tag</description></attribute><attribute><name>htmlEscape</name><required>false</required><rtexprvalue>true</rtexprvalue><description>Enable/disable HTML escaping of rendered values.</description></attribute></tag><!-- <form:radiobutton/> --><tag><name>radiobutton</name><tag-class>org.springframework.web.servlet.tags.form.RadioButtonTag</tag-class><body-content>empty</body-content><description>Renders an HTML 'input' tag with type 'radio'.</description><attribute><name>path</name><required>true</required><rtexprvalue>true</rtexprvalue><description>Path to property for data binding</description></attribute><attribute><name>id</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Standard Attribute</description></attribute><attribute><name>htmlEscape</name><required>false</required><rtexprvalue>true</rtexprvalue><description>Enable/disable HTML escaping of rendered values.</description></attribute><attribute><name>cssClass</name><required>false</required><rtexprvalue>true</rtexprvalue><description>Equivalent to "class" - HTML Optional Attribute</description></attribute><attribute><name>cssErrorClass</name><required>false</required><rtexprvalue>true</rtexprvalue><description>Equivalent to "class" - HTML Optional Attribute. Used when the bound field has errors.</description></attribute><attribute><name>cssStyle</name><required>false</required><rtexprvalue>true</rtexprvalue><description>Equivalent to "style" - HTML Optional Attribute</description></attribute><attribute><name>lang</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Standard Attribute</description></attribute><attribute><name>title</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Standard Attribute</description></attribute><attribute><name>dir</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Standard Attribute</description></attribute><attribute><name>tabindex</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Standard Attribute</description></attribute><attribute><name>disabled</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Optional Attribute. Setting the value of this attribute to 'true' (without the quotes) will disable the HTML element.</description></attribute><attribute><name>onclick</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Event Attribute</description></attribute><attribute><name>ondblclick</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Event Attribute</description></attribute><attribute><name>onmousedown</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Event Attribute</description></attribute><attribute><name>onmouseup</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Event Attribute</description></attribute><attribute><name>onmouseover</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Event Attribute</description></attribute><attribute><name>onmousemove</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Event Attribute</description></attribute><attribute><name>onmouseout</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Event Attribute</description></attribute><attribute><name>onkeypress</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Event Attribute</description></attribute><attribute><name>onkeyup</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Event Attribute</description></attribute><attribute><name>onkeydown</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Event Attribute</description></attribute><attribute><name>onfocus</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Event Attribute</description></attribute><attribute><name>onblur</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Event Attribute</description></attribute><attribute><name>onchange</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Event Attribute</description></attribute><attribute><name>accesskey</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Standard Attribute</description></attribute><!-- radio button specific attributes --><attribute><name>value</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Optional Attribute</description></attribute></tag><!-- <form:checkbox/> --><tag><name>checkbox</name><tag-class>org.springframework.web.servlet.tags.form.CheckboxTag</tag-class><body-content>empty</body-content><description>Renders an HTML 'input' tag with type 'checkbox'.</description><attribute><name>path</name><required>true</required><rtexprvalue>true</rtexprvalue><description>Path to property for data binding</description></attribute><attribute><name>id</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Standard Attribute</description></attribute><attribute><name>htmlEscape</name><required>false</required><rtexprvalue>true</rtexprvalue><description>Enable/disable HTML escaping of rendered values.</description></attribute><attribute><name>cssClass</name><required>false</required><rtexprvalue>true</rtexprvalue><description>Equivalent to "class" - HTML Optional Attribute</description></attribute><attribute><name>cssErrorClass</name><required>false</required><rtexprvalue>true</rtexprvalue><description>Equivalent to "class" - HTML Optional Attribute. Used when the bound field has errors.</description></attribute><attribute><name>cssStyle</name><required>false</required><rtexprvalue>true</rtexprvalue><description>Equivalent to "style" - HTML Optional Attribute</description></attribute><attribute><name>lang</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Standard Attribute</description></attribute><attribute><name>title</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Standard Attribute</description></attribute><attribute><name>dir</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Standard Attribute</description></attribute><attribute><name>tabindex</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Standard Attribute</description></attribute><attribute><name>disabled</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Optional Attribute. Setting the value of this attribute to 'true' (without the quotes) will disable the HTML element.</description></attribute><attribute><name>onclick</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Event Attribute</description></attribute><attribute><name>ondblclick</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Event Attribute</description></attribute><attribute><name>onmousedown</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Event Attribute</description></attribute><attribute><name>onmouseup</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Event Attribute</description></attribute><attribute><name>onmouseover</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Event Attribute</description></attribute><attribute><name>onmousemove</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Event Attribute</description></attribute><attribute><name>onmouseout</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Event Attribute</description></attribute><attribute><name>onkeypress</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Event Attribute</description></attribute><attribute><name>onkeyup</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Event Attribute</description></attribute><attribute><name>onkeydown</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Event Attribute</description></attribute><attribute><name>onfocus</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Event Attribute</description></attribute><attribute><name>onblur</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Event Attribute</description></attribute><attribute><name>onchange</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Event Attribute</description></attribute><attribute><name>accesskey</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Standard Attribute</description></attribute><!-- checkbox specific attributes --><attribute><name>value</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Optional Attribute</description></attribute></tag><!-- <form:textarea/> --><tag><name>textarea</name><tag-class>org.springframework.web.servlet.tags.form.TextareaTag</tag-class><body-content>empty</body-content><description>Renders an HTML 'textarea'.</description><attribute><name>path</name><required>true</required><rtexprvalue>true</rtexprvalue><description>Path to property for data binding</description></attribute><attribute><name>id</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Standard Attribute</description></attribute><attribute><name>htmlEscape</name><required>false</required><rtexprvalue>true</rtexprvalue><description>Enable/disable HTML escaping of rendered values.</description></attribute><attribute><name>cssClass</name><required>false</required><rtexprvalue>true</rtexprvalue><description>Equivalent to "class" - HTML Optional Attribute</description></attribute><attribute><name>cssErrorClass</name><required>false</required><rtexprvalue>true</rtexprvalue><description>Equivalent to "class" - HTML Optional Attribute. Used when the bound field has errors.</description></attribute><attribute><name>cssStyle</name><required>false</required><rtexprvalue>true</rtexprvalue><description>Equivalent to "style" - HTML Optional Attribute</description></attribute><attribute><name>lang</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Standard Attribute</description></attribute><attribute><name>title</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Standard Attribute</description></attribute><attribute><name>dir</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Standard Attribute</description></attribute><attribute><name>tabindex</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Standard Attribute</description></attribute><attribute><name>disabled</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Optional Attribute. Setting the value of this attribute to 'true' (without the quotes) will disable the HTML element.</description></attribute><attribute><name>onclick</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Event Attribute</description></attribute><attribute><name>ondblclick</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Event Attribute</description></attribute><attribute><name>onmousedown</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Event Attribute</description></attribute><attribute><name>onmouseup</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Event Attribute</description></attribute><attribute><name>onmouseover</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Event Attribute</description></attribute><attribute><name>onmousemove</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Event Attribute</description></attribute><attribute><name>onmouseout</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Event Attribute</description></attribute><attribute><name>onkeypress</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Event Attribute</description></attribute><attribute><name>onkeyup</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Event Attribute</description></attribute><attribute><name>onkeydown</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Event Attribute</description></attribute><attribute><name>onfocus</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Event Attribute</description></attribute><attribute><name>onblur</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Event Attribute</description></attribute><attribute><name>onchange</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Event Attribute</description></attribute><attribute><name>accesskey</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Standard Attribute</description></attribute><!-- 'textarea' specific attributes --><attribute><name>rows</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Required Attribute</description></attribute><attribute><name>cols</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Required Attribute</description></attribute><attribute><name>onselect</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Event Attribute</description></attribute><attribute><name>readonly</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Optional Attribute. Setting the value of this attribute to 'true' (without the quotes) will make the HTML element readonly.</description></attribute></tag><!-- <form:errors/> --><tag><name>errors</name><tag-class>org.springframework.web.servlet.tags.form.ErrorsTag</tag-class><body-content>JSP</body-content><description>Renders field errors in an HTML 'span' tag.</description><variable><name-given>messages</name-given><variable-class>java.util.List</variable-class></variable><attribute><name>path</name><required>false</required><rtexprvalue>true</rtexprvalue><description>Path to errors object for data binding</description></attribute><attribute><name>id</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Standard Attribute</description></attribute><attribute><name>htmlEscape</name><required>false</required><rtexprvalue>true</rtexprvalue><description>Enable/disable HTML escaping of rendered values.</description></attribute><attribute><name>delimiter</name><required>false</required><rtexprvalue>true</rtexprvalue><description>Delimiter for displaying multiple error messages. Defaults to the br tag.</description></attribute><attribute><name>cssClass</name><required>false</required><rtexprvalue>true</rtexprvalue><description>Equivalent to "class" - HTML Optional Attribute</description></attribute><attribute><name>cssStyle</name><required>false</required><rtexprvalue>true</rtexprvalue><description>Equivalent to "style" - HTML Optional Attribute</description></attribute><attribute><name>lang</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Standard Attribute</description></attribute><attribute><name>title</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Standard Attribute</description></attribute><attribute><name>dir</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Standard Attribute</description></attribute><attribute><name>tabindex</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Standard Attribute</description></attribute><attribute><name>onclick</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Event Attribute</description></attribute><attribute><name>ondblclick</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Event Attribute</description></attribute><attribute><name>onmousedown</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Event Attribute</description></attribute><attribute><name>onmouseup</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Event Attribute</description></attribute><attribute><name>onmouseover</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Event Attribute</description></attribute><attribute><name>onmousemove</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Event Attribute</description></attribute><attribute><name>onmouseout</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Event Attribute</description></attribute><attribute><name>onkeypress</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Event Attribute</description></attribute><attribute><name>onkeyup</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Event Attribute</description></attribute><attribute><name>onkeydown</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Event Attribute</description></attribute><attribute><name>element</name><required>false</required><rtexprvalue>true</rtexprvalue><description>Specifies the HTML element that is used to render the enclosing errors.</description></attribute></tag><!-- <form:label/> --><tag><name>label</name><tag-class>org.springframework.web.servlet.tags.form.LabelTag</tag-class><body-content>JSP</body-content><description>Renders a form field label in an HTML 'label' tag.</description><attribute><name>path</name><required>true</required><rtexprvalue>true</rtexprvalue><description>Path to errors object for data binding</description></attribute><attribute><name>id</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Standard Attribute</description></attribute><attribute><name>htmlEscape</name><required>false</required><rtexprvalue>true</rtexprvalue><description>Enable/disable HTML escaping of rendered values.</description></attribute><attribute><name>for</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Standard Attribute</description></attribute><attribute><name>cssClass</name><required>false</required><rtexprvalue>true</rtexprvalue><description>Equivalent to "class" - HTML Optional Attribute.</description></attribute><attribute><name>cssErrorClass</name><required>false</required><rtexprvalue>true</rtexprvalue><description>Equivalent to "class" - HTML Optional Attribute. Used only when errors are present.</description></attribute><attribute><name>cssStyle</name><required>false</required><rtexprvalue>true</rtexprvalue><description>Equivalent to "style" - HTML Optional Attribute</description></attribute><attribute><name>lang</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Standard Attribute</description></attribute><attribute><name>title</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Standard Attribute</description></attribute><attribute><name>dir</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Standard Attribute</description></attribute><attribute><name>tabindex</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Standard Attribute</description></attribute><attribute><name>onclick</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Event Attribute</description></attribute><attribute><name>ondblclick</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Event Attribute</description></attribute><attribute><name>onmousedown</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Event Attribute</description></attribute><attribute><name>onmouseup</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Event Attribute</description></attribute><attribute><name>onmouseover</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Event Attribute</description></attribute><attribute><name>onmousemove</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Event Attribute</description></attribute><attribute><name>onmouseout</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Event Attribute</description></attribute><attribute><name>onkeypress</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Event Attribute</description></attribute><attribute><name>onkeyup</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Event Attribute</description></attribute><attribute><name>onkeydown</name><required>false</required><rtexprvalue>true</rtexprvalue><description>HTML Event Attribute</description></attribute></tag></taglib>
<?xml version="1.0" encoding="ISO-8859-1" ?>
<!DOCTYPE taglib PUBLIC "-//Sun Microsystems, Inc.//DTD JSP Tag Library 1.2//EN" "http://java.sun.com/dtd/web-jsptaglibrary_1_2.dtd"><taglib><tlib-version>2.0</tlib-version><jsp-version>1.2</jsp-version><short-name>spring</short-name><uri>http://www.springframework.org/tags</uri><description>Spring Framework JSP Tag Library</description><tag><name>htmlEscape</name><tag-class>org.springframework.web.servlet.tags.HtmlEscapeTag</tag-class><body-content>JSP</body-content><description>Sets default HTML escape value for the current page.Overrides a "defaultHtmlEscape" context-param in web.xml, if any.</description><attribute><name>defaultHtmlEscape</name><required>true</required><rtexprvalue>true</rtexprvalue><description>Set the default value for HTML escaping, to be putinto the current PageContext.</description></attribute></tag><tag><name>escapeBody</name><tag-class>org.springframework.web.servlet.tags.EscapeBodyTag</tag-class><body-content>JSP</body-content><description>Escapes its enclosed body content, applying HTML escaping and/or JavaScript escaping.The HTML escaping flag participates in a page-wide or application-wide setting(i.e. by HtmlEscapeTag or a "defaultHtmlEscape" context-param in web.xml).</description><attribute><name>htmlEscape</name><required>false</required><rtexprvalue>true</rtexprvalue><description>Set HTML escaping for this tag, as boolean value. Overrides thedefault HTML escaping setting for the current page.</description></attribute><attribute><name>javaScriptEscape</name><required>false</required><rtexprvalue>true</rtexprvalue><description>Set JavaScript escaping for this tag, as boolean value.Default is false.</description></attribute></tag><tag><name>message</name><tag-class>org.springframework.web.servlet.tags.MessageTag</tag-class><body-content>JSP</body-content><description>Retrieves the message with the given code, or text if code isn't resolvable.The HTML escaping flag participates in a page-wide or application-wide setting(i.e. by HtmlEscapeTag or a "defaultHtmlEscape" context-param in web.xml).</description><attribute><name>message</name><required>false</required><rtexprvalue>true</rtexprvalue><description>A MessageSourceResolvable argument (direct or through JSP EL).Fits nicely when used in conjunction with Spring's own validation errorclasses which all implement the MessageSourceResolvable interface. Forexample, this allows you to iterate over all of the errors in a form,passing each error (using a runtime expression) as the value of this'message' attribute, thus effecting the easy display of such errormessages.</description></attribute><attribute><name>code</name><required>false</required><rtexprvalue>true</rtexprvalue><description>The code (key) to use when looking up the message.If code is not provided, the text attribute will be used.</description></attribute><attribute><name>arguments</name><required>false</required><rtexprvalue>true</rtexprvalue><description>Set optional message arguments for this tag, as a(comma-)delimited String (each String argument can contain JSP EL),an Object array (used as argument array), or a single Object (usedas single argument).</description></attribute><attribute><name>argumentSeparator</name><required>false</required><rtexprvalue>true</rtexprvalue><description>The separator character to be used for splitting thearguments string value; defaults to a 'comma' (',').</description></attribute><attribute><name>text</name><required>false</required><rtexprvalue>true</rtexprvalue><description>Default text to output when a message for the given codecould not be found. If both text and code are not set, the tag willoutput null.</description></attribute><attribute><name>var</name><required>false</required><rtexprvalue>true</rtexprvalue><description>The string to use when binding the result to the page,request, session or application scope. If not specified, the resultgets outputted to the writer (i.e. typically directly to the JSP).</description></attribute><attribute><name>scope</name><required>false</required><rtexprvalue>true</rtexprvalue><description>The scope to use when exporting the result to a variable.This attribute is only used when var is also set. Possible values arepage, request, session and application.</description></attribute><attribute><name>htmlEscape</name><required>false</required><rtexprvalue>true</rtexprvalue><description>Set HTML escaping for this tag, as boolean value.Overrides the default HTML escaping setting for the current page.</description></attribute><attribute><name>javaScriptEscape</name><required>false</required><rtexprvalue>true</rtexprvalue><description>Set JavaScript escaping for this tag, as boolean value. Default is false.</description></attribute></tag><tag><name>theme</name><tag-class>org.springframework.web.servlet.tags.ThemeTag</tag-class><body-content>JSP</body-content><description>Retrieves the theme message with the given code, or text if code isn't resolvable.The HTML escaping flag participates in a page-wide or application-wide setting(i.e. by HtmlEscapeTag or a "defaultHtmlEscape" context-param in web.xml).</description><attribute><name>message</name><required>false</required><rtexprvalue>true</rtexprvalue><description>A MessageSourceResolvable argument (direct or through JSP EL).</description></attribute><attribute><name>code</name><required>false</required><rtexprvalue>true</rtexprvalue><description>The code (key) to use when looking up the message.If code is not provided, the text attribute will be used.</description></attribute><attribute><name>arguments</name><required>false</required><rtexprvalue>true</rtexprvalue><description>Set optional message arguments for this tag, as a(comma-)delimited String (each String argument can contain JSP EL),an Object array (used as argument array), or a single Object (usedas single argument).</description></attribute><attribute><name>argumentSeparator</name><required>false</required><rtexprvalue>true</rtexprvalue><description>The separator character to be used for splitting thearguments string value; defaults to a 'comma' (',').</description></attribute><attribute><name>text</name><required>false</required><rtexprvalue>true</rtexprvalue><description>Default text to output when a message for the given codecould not be found. If both text and code are not set, the tag willoutput null.</description></attribute><attribute><name>var</name><required>false</required><rtexprvalue>true</rtexprvalue><description>The string to use when binding the result to the page,request, session or application scope. If not specified, the resultgets outputted to the writer (i.e. typically directly to the JSP).</description></attribute><attribute><name>scope</name><required>false</required><rtexprvalue>true</rtexprvalue><description>The scope to use when exporting the result to a variable.This attribute is only used when var is also set. Possible values arepage, request, session and application.</description></attribute><attribute><name>htmlEscape</name><required>false</required><rtexprvalue>true</rtexprvalue><description>Set HTML escaping for this tag, as boolean value.Overrides the default HTML escaping setting for the current page.</description></attribute><attribute><name>javaScriptEscape</name><required>false</required><rtexprvalue>true</rtexprvalue><description>Set JavaScript escaping for this tag, as boolean value. Default is false.</description></attribute></tag><tag><name>hasBindErrors</name><tag-class>org.springframework.web.servlet.tags.BindErrorsTag</tag-class><body-content>JSP</body-content><description>Provides Errors instance in case of bind errors.The HTML escaping flag participates in a page-wide or application-wide setting(i.e. by HtmlEscapeTag or a "defaultHtmlEscape" context-param in web.xml).</description><variable><name-given>errors</name-given><variable-class>org.springframework.validation.Errors</variable-class></variable><attribute><name>name</name><required>true</required><rtexprvalue>true</rtexprvalue><description>The name of the bean in the request, that needs to beinspected for errors. If errors are available for this bean, theywill be bound under the 'errors' key.</description></attribute><attribute><name>htmlEscape</name><required>false</required><rtexprvalue>true</rtexprvalue><description>Set HTML escaping for this tag, as boolean value.Overrides the default HTML escaping setting for the current page.</description></attribute></tag><tag><name>nestedPath</name><tag-class>org.springframework.web.servlet.tags.NestedPathTag</tag-class><body-content>JSP</body-content><description>Sets a nested path to be used by the bind tag's path.</description><variable><name-given>nestedPath</name-given><variable-class>java.lang.String</variable-class></variable><attribute><name>path</name><required>true</required><rtexprvalue>true</rtexprvalue><description>Set the path that this tag should apply. E.g. 'customer'to allow bind paths like 'address.street' rather than'customer.address.street'.</description></attribute></tag><tag><name>bind</name><tag-class>org.springframework.web.servlet.tags.BindTag</tag-class><body-content>JSP</body-content><description>Provides BindStatus object for the given bind path.The HTML escaping flag participates in a page-wide or application-wide setting(i.e. by HtmlEscapeTag or a "defaultHtmlEscape" context-param in web.xml).</description><variable><name-given>status</name-given><variable-class>org.springframework.web.servlet.support.BindStatus</variable-class></variable><attribute><name>path</name><required>true</required><rtexprvalue>true</rtexprvalue><description>The path to the bean or bean property to bind statusinformation for. For instance account.name, company.address.zipCodeor just employee. The status object will exported to the page scope,specifically for this bean or bean property</description></attribute><attribute><name>ignoreNestedPath</name><required>false</required><rtexprvalue>true</rtexprvalue><description>Set whether to ignore a nested path, if any. Default is to not ignore.</description></attribute><attribute><name>htmlEscape</name><required>false</required><rtexprvalue>true</rtexprvalue><description>Set HTML escaping for this tag, as boolean value. Overridesthe default HTML escaping setting for the current page.</description></attribute></tag><tag><name>transform</name><tag-class>org.springframework.web.servlet.tags.TransformTag</tag-class><body-content>JSP</body-content><description>Provides transformation of variables to Strings, using an appropriatecustom PropertyEditor from BindTag (can only be used inside BindTag).The HTML escaping flag participates in a page-wide or application-wide setting(i.e. by HtmlEscapeTag or a 'defaultHtmlEscape' context-param in web.xml).</description><attribute><name>value</name><required>true</required><rtexprvalue>true</rtexprvalue><description>The value to transform. This is the actual object you wantto have transformed (for instance a Date). Using the PropertyEditor thatis currently in use by the 'spring:bind' tag.</description></attribute><attribute><name>var</name><required>false</required><rtexprvalue>true</rtexprvalue><description>The string to use when binding the result to the page,request, session or application scope. If not specified, the result getsoutputted to the writer (i.e. typically directly to the JSP).</description></attribute><attribute><name>scope</name><required>false</required><rtexprvalue>true</rtexprvalue><description>The scope to use when exported the result to a variable.This attribute is only used when var is also set. Possible values arepage, request, session and application.</description></attribute><attribute><name>htmlEscape</name><required>false</required><rtexprvalue>true</rtexprvalue><description>Set HTML escaping for this tag, as boolean value. Overridesthe default HTML escaping setting for the current page.</description></attribute></tag></taglib>
<?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.FilterDispatcher</filter-class></filter><filter-mapping><filter-name>struts2</filter-name><url-pattern>/*</url-pattern></filter-mapping><welcome-file-list><welcome-file>index.jsp</welcome-file></welcome-file-list><listener><listener-class>org.springframework.web.context.ContextLoaderListener</listener-class></listener></web-app>
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<base href="<%=basePath%>">  
<title>对不起,登录失败!</title><script>function jumpToLogin(){document.location.href="login.jsp";}</script>
</head><body><p>对不起,登录失败,帐号或者密码错误!请重新登录!</p><br><input type="button" value="返回登录" οnclick="jumpToLogin()"/>
</body>
</html>
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%@ taglib prefix="s" uri="/struts-tags"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<base href="<%=basePath%>">
<title>用户登录</title><script>function jumpToRegist(){document.location.href="regist.jsp";}</script>
</head><body><s:form action="login" method="post"><table><tr><td>用户:<input type="text" name="user.username"/></td></tr><tr><td>密码:<input type="password" name="user.password"/></td></tr><tr><td><input type="submit" value="登录"/></td><td><input type="button" value="注册" οnclick="jumpToRegist()"/></td></tr></table></s:form>
</body>
</html>
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%@ taglib prefix="s" uri="/struts-tags"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<base href="<%=basePath%>">
<title>regist</title><script>function jumpToLogin(){document.location.href="login.jsp";}</script>
</head><body><s:form action="regist" method="post"><table><tr><td>用户:<input type="text" name="user.username"/></td></tr><tr><td>密码:<input type="password" name="user.password"/></td></tr><tr><td><input type="submit" value="注册"/></td><td><input type="button" value="返回登录" οnclick="jumpToLogin()"/></td></tr></table></s:form>
</body>
</html>
<%@ page language="java" contentType="text/html; charset=UTF-8"pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>注册成功</title><script>  function jumpToLogin(){  document.location.href="login.jsp";  }  </script>
</head>
<body>注册成功!<br><input type="button" value="返回登录" οnclick="jumpToLogin()"/>
</body>
</html>
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<base href="<%=basePath%>">   
<title>登录成功</title>
</head>
<body>登录成功!
</body>
</html>

此次代码是在Eclipse下部署的SSH框架示例代码,所有代码的下载地址在文章最下方。

并且代码进过了EclipseMyEclpse以及IDEA的测试,只需要稍微修改下就可以随便转换使用。

代码下载地址:点击下载

转载于:https://www.cnblogs.com/ceet/p/6410199.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/456430.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Visual Studio Code 前端调试不完全指南

本文最初发布于我的个人博客&#xff1a;咀嚼之味Visual Studio Code (以下简称 vscode) 如今已经代替 Sublime&#xff0c;成为前端工程师们最喜爱的代码编辑器。它作为一个大型的开源项目&#xff0c;不断推陈出新&#xff1b;社区中涌现出大量优质的插件&#xff0c;以支持我…

机器学习之LDA主题模型算法

文章目录1、知道LDA的特点和应用方向1.1、特点1.2、应用方向2、知道Beta分布和Dirichlet分布数学含义3、了解共轭先验分布4、知道先验概率和后验概率5、知道参数α值的大小对应的含义6、掌握LDA主题模型的生成过程7、知道超参数α等值的参考值8、LDA总结1、知道LDA的特点和应用…

[Go] Template 使用简介

Golang 提供了两个标准库用来处理模板 text/template 和 html/template。我们使用 html/template 格式化 html 字符。 模板引擎 模板引擎很多&#xff0c;Python 的 jinja&#xff0c;nodejs 的 jade 等都很好。所谓模板引擎&#xff0c;则将模板和数据进行渲染的输出格式化后的…

内存泄露监测

2019独角兽企业重金招聘Python工程师标准>>> iOS 内存泄露监测 144 作者 谢谢生活 已关注 2017.05.19 17:38* 字数 4235 阅读 209评论 0喜欢 6 iOS可能存在的内存泄露&#xff1a;block 循环引用。当一个对象有一个block属性&#xff0c;而block属性又引用这个对象…

玩Azkaban跳过的坑

文章目录一号坑&#xff1a;启动Azkaban报错&#xff1a;User xml file conf/azkaban-users.xml doesnt exist.二号坑&#xff1a;报错&#xff1a;failed SslSocketConnector0.0.0.0:8443: java.io.FileNotFoundException: /home/hadoop/app/azkaban/azkaban-web-2.5.0/bin/ke…

删除节点removeChild()

http://www.imooc.com/code/1700 删除节点removeChild() removeChild() 方法从子节点列表中删除某个节点。如删除成功&#xff0c;此方法可返回被删除的节点&#xff0c;如失败&#xff0c;则返回 NULL。 语法: nodeObject.removeChild(node) 参数: node &#xff1a;必需&…

机器学习自主解决安全威胁离我们还有多远?

曾经听见不止一次这样的问题&#xff1a; “机器学习会替代基于人工经验规则的安全解决方案么&#xff1f;”把这个问题放在去年来看&#xff0c;我们已经得到了非常多的讨论甚至是一些已经实际应用的解决方案&#xff0c;对于人工智能在安全以及其它各种对数据进行价值挖掘的场…

Vue:解决[Vue warn]: Failed to resolve directive: modle (found in Anonymous)

解决问题 [Vue warn]: Failed to resolve directive: modle (found in <ComponentA>) console.error(("[Vue warn]: " msg trace)); 原因是 我把model 写成了 modle 这类错误一般是单词写错了 (found in <Anonymous>) 解决思路

一行Python代码制作动态二维码

目录 1、普通二维码 2、艺术二维码 3、动态二维码 在GitHub上发现了一个比较有意思的项目&#xff0c;只需要一行Python代码就可以快捷方便生成普通二维码、艺术二维码(黑白/彩色)和动态GIF二维码。 GitHub网站参加&#xff1a;https://github.com/sylnsfar/qrcode 用法比…

Vue常用经典开源项目汇总参考-海量

Vue常用经典开源项目汇总参考-海量 Vue是什么&#xff1f; Vue.js&#xff08;读音 /vjuː/, 类似于 view&#xff09; 是一套构建用户界面的 渐进式框架。与其他重量级框架不同的是&#xff0c;Vue 采用自底向上增量开发的设计。Vue 的核心库只关注视图层&#xff0c;并且非常…

Pycharm常用高效技巧总结

文章目录1、PyCharm如何自动生成函数注释2、pycharm运行程序时在Python console窗口中运行3、Pycharm在创建py文件时,如何自动添加文件头注释4、Pycharm配置远程调试5、pycharm同一目录下无法import明明已经存在的.py文件1、PyCharm如何自动生成函数注释 一般在函数def()行下敲…

EntityFramework中常用的数据删除方式

最近在学EF&#xff0c;目前了解到删除操作有三种方式&#xff0c; 第一&#xff0c;官方推荐的先查询数据&#xff0c;再根据查询的对象&#xff0c;删除对象。 这是第一种&#xff0c;官方推荐 第二&#xff0c;自己创建一个对象&#xff0c;然后附加&#xff0c;然后删除。 …

Elasticsearch的前后台运行与停止(tar包方式)

备注&#xff1a;在生产环境中&#xff0c;往往一般用后台来运行。jps查看。 1、ES的前台运行 [hadoopdjt002 elasticsearch-2.4.3]$ pwd/usr/local/elasticsearch/elasticsearch-2.4.3[hadoopdjt002 elasticsearch-2.4.3]$ bin/elasticsearch 2、ES的后台运行 [hadoopdjt002 e…

解决pycharm运行Flask指定ip、端口更改无效

后来查了一下官网文档&#xff0c;原来Flask 1.0 版本不再支持之前的FLASK_ENV 环境变量了。 Prior to Flask 1.0 the FLASK_ENV environment variable was not supported and you needed to enable debug mode by exporting FLASK_DEBUG1. This can still be used to control…

Android中SimpleAdapter的使用—自定义列表

本人初学Android&#xff0c;今天研究到Adapter这块感觉挺有意思的&#xff0c;写了个自定义列表进行测试 首先我们新建一个layout列表布局文件&#xff0c;具体布局可以自己设定。 下面贴上我的自定义布局文件代码 1 <?xml version"1.0" encoding"utf-8&qu…

linux lvm扩容

linux lvm扩容 LVM磁盘管理 一、LVM简介... 1 二、 LVM基本术语... 2 三、 安装LVM... 3 四、 创建和管理LVM... 4 2、 创建PV.. 6 3、 创建VG.. 7 4、 创建LV.. 9 5、LV格式化及挂载... 10 一、LVM简介 LVM是 Logical Volume Manager(逻辑卷管理)的简写&#xff0c;它由Heinz …

Python基础常见面试题总结

文章目录基础知识题看程序写结果题编程题以下是总结的一些常见的Python基础面试题&#xff0c;帮助大家回顾基础知识&#xff0c;了解面试套路。会一直保持更新状态。PS&#xff1a;加粗为需要注意的点。基础知识题 1、深拷贝和浅拷贝的区别是什么&#xff1f; 深拷贝是将对象…

Flask-Script扩展命令行manager = Manager(app)

通过使用Flask-Script扩展&#xff0c;我们可以在Flask服务器启动的时候&#xff0c;通过命令行的方式传入参数。而不仅仅通过app.run()方法中传参&#xff0c;比如我们可以通过python hello.py runserver --host ip地址&#xff0c;告诉服务器在哪个网络接口监听来自客户端的连…

Python基础总结之常用内置方法总结

文章目录前言1、str1.1、内置方法&#xff1a;1.2、常用的内置方法1.3、String模块的一些方法2、list2.1、内置方法2.2、常用内置方法3、tupple3.1、内置方法3.2、常用内置方法4、dict4.1、内置方法4.2、常用内置方法5、其他5.1、几个sort的使用5.2、enumerate&#xff08;&…

线程的条件变量实例

情景1&#xff1a;Jack开着一辆出租车来到一个网站停车。看见没人就走了。过段时间。Susan来到网站准备乘车。可是没有来&#xff0c;于是就等着。过了一会Mike开着车来到了这个网站&#xff0c;Sunsan就上了Mike的车走了。如图所看到的&#xff1a;程序实现该情景&#xff1a;…