不小心删除了源代码,有发布的程序,反编译
创建工程springmy2
配置文件
web.xml
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://xmlns.jcp.org/xml/ns/javaee" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd" id="WebApp_ID" version="3.1">
<display-name>xny</display-name>
<welcome-file-list>
<welcome-file>pny.action</welcome-file>
</welcome-file-list>
<servlet>
<servlet-name>pny</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>pny</servlet-name>
<url-pattern>*.php</url-pattern>
<url-pattern>/pny.action</url-pattern>
</servlet-mapping>
</web-app>
pny-servlet.xml
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:context="http://www.springframework.org/schema/context"
xmlns:mvc="http://www.springframework.org/schema/mvc"
xmlns:tx="http://www.springframework.org/schema/tx"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-4.1.xsd
http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-4.1.xsd
http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-4.1.xsd">
<context:component-scan base-package="com.springb"></context:component-scan>
<mvc:annotation-driven></mvc:annotation-driven>
<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="prefix" value="/WEB-INF/"> </property>
<property name="suffix" value=".jsp"> </property>
</bean>
<bean id="dataSource" class="org.apache.tomcat.dbcp.dbcp2.BasicDataSource">
<property name="driverClassName" value="com.mysql.jdbc.Driver"></property>
<property name="url" value="jdbc:mysql://localhost:3306/eat"></property>
<property name="username" value="root"></property>
<property name="password" value=""></property>
<property name="initialSize" value="5"></property>
<property name="maxIdle" value="2"></property>
</bean>
<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
<property name="dataSource" ref="dataSource" />
<property name="configLocation" value="classpath:mybatis-config.xml">
</property>
</bean>
<!-- 创建代理类对象 -->
<bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
<property name="basePackage" value="com.springb.mapper"></property>
<property name="sqlSessionFactoryBeanName" value="sqlSessionFactory"></property>
</bean>
<bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver"></bean>
</beans>
mybatis-config.xml
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE configuration
PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
<typeAliases>
<!--
<typeAlias type="com.xny.model.Zyy" alias="Zyy"></typeAlias>
-->
</typeAliases>
<mappers>
<mapper resource="com/springb/mapper/PnyMapper.xml" />
</mappers>
</configuration>
View
showPny.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>showPny</title>
<style type="text/css">
table,tr,td {
border: 1px solid black; border-collapse: collapse;
}
</style>
</head>
<body>
<a href="pny/insert.php">insert</a>
<hr>
<form action="${pageContext.request.contextPath}/pny.action">
pb :<input name="pb"> <input type="submit" value="find">
</form>
<hr>
<table> <tr> <td>PA</td> <td>PB</td><td>PC</td><td>PD</td> <td>OP</td> </tr>
<c:forEach items="${requestScope.pny}" var="p">
<tr><td>${p.pa}</td><td>${p.pb}</td><td>${p.pc}</td><td>
<img alt="" src="${pageContext.request.contextPath}/upload/${p.pd}" width="50px" height="50px">
</td><td> del/update</td></tr>
</c:forEach>
</table>
</body>
</html>
insertPny.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>pny</title>
<script type="text/javascript" src="js/jquery.min.js"></script>
</head>
<body>
<!-- - -->
<form action="${pageContext.request.contextPath}/pny/insert.php" method="post" enctype="multipart/form-data" >
<table>
<tr> <td> pa: </td>
<td> <input id="pa" name="pa" onkeyup="check(this.value)"></td> <td> <pny id="pats"> </pny> </td></tr>
<tr> <td> pb: </td>
<td> <input id="pb" name="pb"></td> <td> <pny id="pbts"> </pny></td></tr>
<tr> <td> pc: </td>
<td> <input id="pc" name="pc"></td> <td> <pny id="pcts"> </pny></td></tr>
<tr> <td> pd: </td>
<td> <input type="file" id="pfile" name="pfile"></td> <td> <pny id="pdts"> </pny></td></tr>
<tr> <td> </td>
<td> <input type="submit" id="tj" > <input type="reset" >
</td> <td></td> </tr>
</table>
</form>
</body>
</html>
Controller
package com.springb.controller;
import java.io.File;
import java.io.IOException;
import java.util.Map;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.multipart.MultipartFile;
import com.springb.service.PnyService;
@Controller
@RequestMapping({ "/pny" })
public class PnyController {
@Autowired
PnyService pnyService;
@RequestMapping
public String select(HttpServletRequest req, HttpServletResponse resp, @RequestParam Map map) throws IOException {
req.setAttribute("pny", this.pnyService.select(map));
return "showPny";
}
@RequestMapping(value = { "/insert" }, method = { org.springframework.web.bind.annotation.RequestMethod.GET })
public String insert() throws IOException {
return "insertPny";
}
@RequestMapping(value = { "/insert" }, method = { org.springframework.web.bind.annotation.RequestMethod.POST })
public String insert(HttpServletRequest req, HttpServletResponse resp, @RequestParam Map map, MultipartFile pfile)
throws IOException {
String sPath = req.getServletContext().getRealPath("/");
String sFileName = "";
if ((pfile != null) && (!pfile.isEmpty())) {
try {
sFileName = map.get("pa") + "_" + pfile.getOriginalFilename();
sPath = sPath + "/upload/" + sFileName;
pfile.transferTo(new File(sPath));
} catch (Exception e) {
System.out.println(e.getMessage());
}
}
map.put("pd", sFileName);
if (this.pnyService.insert(map)) {
return "redirect:/pny.action";
}
return "insertPny";
}
}
Service
package com.springb.service;
import java.util.List;
import java.util.Map;
public abstract interface PnyService
{
public abstract boolean insert(Map paramMap);
public abstract List select(Map paramMap);
}
package com.springb.service;
import java.util.List;
import java.util.Map;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.springb.mapper.PnyMapper;
@Service
public class PnyServiceImpl implements PnyService {
@Autowired
PnyMapper pnyMapper;
public boolean insert(Map map) {
return pnyMapper.insert(map) > 0;
}
public List select(Map map) {
return pnyMapper.select(map);
}
}
Model
package com.springb.mapper;
import java.util.List;
public abstract interface IMapper
{
public abstract int insert(Object paramObject);
public abstract List select(Object paramObject);
}
package com.springb.mapper;
public abstract interface PnyMapper extends IMapper
{
}
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.springb.mapper.PnyMapper">
<insert id="insert" parameterType="Map">
INSERT INTO pny(pa, pb, pc,pd)
VALUES(#{pa}, #{pb}, #{pc}, #{pd})
</insert>
<select id="select" parameterType="Map" resultType="Map">
SELECT * FROM pny
<if test="pb!=null">
where pb like '%${pb}%'
</if>
</select>
</mapper>
运行效果
继续实现登录注册(创建一张用户表),实现删除/修改,不准使用异步,其中增加数据要校验(正则表达式 不用正则表达式),只要做增加/删除/修改操作必须登录