使用SSH框架,并且结合Maven来实现图片的添加与查询显示功能。
1、整个功能的结构如图所示:在Java类中包含了action(控制层)、model(模型层)、service(接口)、serviceImpl(接口的实现类),还包括Spring的配置文件applicationContext.xml,Spring依赖注入配置文件applicationContext_bean.xml,Spring对数据库链接的配置文件applicationContext_db.xml,Struts2的配置文件struts.xml,初始化工程配置信息的web.xml,Maven的配置文件pom.xml。还包括添加图片页码inputphoto.jsp,添加图片成功页面add_success.jsp,查询图片outputphoto.jsp,显示查询出的页面out.jsp。
2、配置pom.xml文件,导入SSH的jar包。如果你没有用到Maven技术,这一步可以跳过不用看。但是你要用合适的方法导入SSh的jar包。
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion><!-- 版本号,自己定义 -->
<groupId>price</groupId> <!-- 组的ID -->
<artifactId>photo</artifactId><!-- 此工程对应的ID,一个 groupId下面可以有多个不同名的artifactId-->
<packaging>war</packaging> <!-- 有jar和war。war定义工程,定义为jar可以被其他的工程引用 -->
<version>0.0.1-SNAPSHOT</version>
<name>photo Maven Webapp</name>
<url>http://maven.apache.org</url>
<build>
<finalName>photo</finalName> <!-- 工程名 -->
</build>
<dependencies>
<!-- struts包 -->
<!-- struts2核心包 -->
<dependency>
<groupId>org.apache.struts</groupId>
<artifactId>struts2-core</artifactId>
<version>2.3.4</version>
</dependency>
<!-- struts2与spring整合的包 -->
<dependency>
<groupId>org.apache.struts</groupId>
<artifactId>struts2-spring-plugin</artifactId>
<version>2.3.4</version>
</dependency>
<!-- 在 Struts2中要使用 Ajax获得Json数据。要使用Ajax必须引用此Jar -->
<dependency>
<groupId>org.apache.struts</groupId>
<artifactId>struts2-json-plugin</artifactId>
<version>2.3.4</version>
</dependency>
<!-- Hibernate包 -->
<!-- Hibernate核心包 -->
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-core</artifactId>
<version>3.5.6-Final</version>
</dependency>
<!-- spring3可选的依赖注入,不可缺少 -->
<dependency>
<groupId>aspectj</groupId>
<artifactId>aspectjweaver</artifactId>
<version>1.5.3</version>
</dependency>
<!-- 扩展Java类与实现Java接口 -->
<dependency>
<groupId>cglib</groupId>
<artifactId>cglib</artifactId>
<version>2.1_3</version>
</dependency>
<!-- 运用Log4j必须用到这个包 -->
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>1.6.1</version>
<scope>compile</scope>
</dependency>
<!-- Spring包 -->
<!-- Spring核心包 -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring</artifactId>
<version>2.5.6</version>
<type>jar</type>
<scope>compile</scope>
</dependency>
<!-- Spring在WEB上的MVC框架上加上这个包 -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-webmvc</artifactId>
<version>2.5.6</version>
<type>jar</type>
<scope>compile</scope>
</dependency>
<!-- 数据源、驱动、日志、工具类包 -->
<!-- log4j日志包 -->
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>1.2.16</version>
<scope>compile</scope>
</dependency>
<!-- jsp接口 -->
<dependency>
<groupId>javax.servlet.jsp</groupId>
<artifactId>jsp-api</artifactId>
<version>2.1</version>
<scope>provided</scope>
</dependency>
<!-- JDBC连接池 -->
<dependency>
<groupId>c3p0</groupId>
<artifactId>c3p0</artifactId>
<version>0.9.1.2</version>
</dependency>
<!-- Oracle数据库JDBC连接包 -->
<dependency>
<groupId>private.oracle</groupId>
<artifactId>ojdbc</artifactId>
<version>10.2.0.2.0</version>
<scope>compile</scope>
</dependency>
<!-- servlet接口 -->
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>servlet-api</artifactId>
<version>2.4</version>
<scope>provided</scope>
</dependency>
</dependencies>
</project>
3、配置web.xml文件初始化工程配置信息,主要包括配置Struts2过滤器和Spring监听和定位applicationContext.xml的物理位置。
<?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">
<!--