µÚÒ»´Î½Ó´¥java
web¿ª·¢£¬»¨·ÑÁËÒ»Ìì°ëµÄʱ¼ä£¬Ð´Á˸ö¼òµ¥µÄµÇÂ¼Ò³Ãæ£¬ÒÔ´ËÎÄΪ¼Ç¡£
¿ª·¢¹¤¾ß
Eclipse Luna Release (4.4.0) ÒѼ¯³Émaven£¬mavenĿǰµÄÌå»á¾ÍÊǹÜÀí¸÷ÖÖÒÀÀµ
jettyΪmavenÌṩµÄÒ»¸ö²å¼þ£¬ÀàËÆtomcat
struts2¿ò¼Ü£¬MVC£¬action£¬jsp
mysql server 5.6
¿ª·¢¹ý³Ì
1. н¨Maven web¹¤³Ì
Group Id: org.apache.maven.archetypes
Artifact Id: maven-archetype-webapp
2. ʹÓÃmavenÌí¼ÓÒÀÀµ¼°²å¼þ
ÔÚpom.xmlµÄ<dependencies></dependencies>¼äÌí¼Ó£¬»òÕßÊÇÓÒ¼ü¹¤³ÌÑ¡ÔñMaven->Add
Dependency
jspÒ³ÃæÖ§³Ö
<dependency> <groupId>javax.servlet</groupId> <artifactId>servlet-api</artifactId> <version>2.5</version> <scope>provided</scope> </dependency> |
struts2
<dependency> <groupId>org.apache.struts</groupId> <artifactId>struts2-core</artifactId> <version>2.3. |
mysql connector
<dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>5.1.31</version> </dependency> |
jetty
Ϊ²å¼þ£¬ÔÚ<plugins></plugins>¼äÌí¼Ó£¬»òÕßÊÇÓÒ¼ü¹¤³ÌÑ¡ÔñMaven->Add
Plugin£¬½Ó×ÅÔÚpom.xmlÖÐдÅäÖÃ
<plugin> <groupId>org.mortbay.jetty</groupId> <artifactId>maven-jetty-plugin</artifactId> <version>6.1.10</version> <configuration> <scanIntervalSeconds>10</scanIntervalSeconds> <stopKey>foo</stopKey> <stopPort>9999</stopPort> </configuration> <executions> <execution> <id>start-jetty</id> <phase>pre-integration-test</phase> <goals> <goal>run</goal> </goals> <configuration> <scanIntervalSeconds>0</scanIntervalSeconds> <daemon>true</daemon> </configuration> </execution> <execution> <id>stop-jetty</id> <phase>post-integration-test</phase> <goals> <goal>stop</goal> </goals> </execution> </executions> </plugin> |
±àÒëÔ´ÂëµÄ²å¼þ
<plugin> <artifactId>maven-compiler-plugin</artifactId> <version>2.3.2</version> <configuration> <source>1.6</source> <target>1.6</target> </configuration> </plugin> |
×¢ÒâpluginµÄ²ã´Î
<build> <plugins> <plugin>...</plugin> </plugins> </build> |
3. mavenÃüÁîÐÐ
ÍøÉÏËÑË÷×ÊÁÏ£¬µÃÖªÃüÁîmvn jetty:run£¬¿ÉÒÔÆô¶¯jetty¡£
Çë½ÌÑîѧ³¤ºó£¬ÖªµÀÔÚEclipseÖУ¬ÓÒ¼ü¹¤³Ì£¬Ñ¡Ôñrun asÖеÄrun
configurations£¬´ò¿ª½çÃæÈçÏÂ

ºì¿ò²¿·Ö£¬¼´ÊÇmavenÃüÁîÊäÈëµÄµØ·½£¬Èçjetty:run
4. struts2¿ò¼Ü¿ª·¢µÇÂ¼Ò³Ãæ
4.1 web.xmlÖÐÌí¼Óstruts2¹ýÂËÆ÷
<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>/*</url-pattern>
</filter-mapping> |
4.2 struts.xmlÖÐÌí¼Óaction
<package name="struts2demo" namespace="/" extends="struts-default"> <action name="Login"> <result>login.jsp</result> </action> <action name="Welcome" class="struts2demo.WelcomeUserAction"> <result name="SUCCESS">welcome_user.jsp</result> <result name="ERROR">error.jsp</result> </action> </package> |
4.3 MVC
V->login.jsp
<%@ page contentType="text/html; charset=UTF-8"%> <%@ taglib prefix="s" uri="/struts-tags"%>
<html>
<head></head>
<body>
<s:form action="Welcome">
<s:textfield name="username" label="Username"/>
<s:password name="password" label="Password"/>
<s:submit/>
</s:form>
</body>
</html> |
M->WelcomeUserAction.java
package struts2demo;
import java.sql.*;
public class WelcomeUserAction {
//<s:textfield name="username">
you can get it from <s:property value="username">
private String username;
private String password;
//get and set method for struts2 fill in
//Username is the label name
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;
}
//"all struts logic here"
public String execute() {
//
try {
Class.forName("com.mysql.jdbc.Driver");
//System.out.println("Success loading Mysql
Driver!");
}
catch (Exception e) {
//System.out.println("Error loading Mysql
Driver!");
e.printStackTrace();
}
//
try {
Connection connect = DriverManager.getConnection("jdbc:mysql://localhost:3306/zrss",
"root", "1234");
String sql = "select * from user where name
= ?";
PreparedStatement ps = connect.prepareStatement(sql);
ps.setString(1, username);
ResultSet rs = ps.executeQuery();
while (rs.next()) {
if (rs.getString("password").equals(password))
{
return "SUCCESS";
}
}
}
catch (Exception e) {
e.printStackTrace();
}
return "ERROR";
}
} |
C->forward to SUCCESS(welcome_user.jsp) or ERROR(error.jsp) |
|