spring4+springmvc+mybatis+maven框架搭建
来源:互联网 发布:unity3d沙盒 编辑:程序博客网 时间:2024/06/11 09:41
一、准备
- JAVA环境JDK1.7,官方下载地址:http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260.html
- Tomcat环境Tomcat7,官方下载地址:http://tomcat.apache.org/download-70.cgi
- Maven环境,官方下载地址:http://maven.apache.org/download.cgi
- Eclipse,官方下载地址:http://www.eclipse.org/downloads/
- Eclipse插件springsource-tool-suite
- Eclipse插件mybatis generator
二、JDK安装与环境变量配置
教程:http://jingyan.baidu.com/article/6dad5075d1dc40a123e36ea3.html
三、Tomcat安装
四、Maven安装与eclipse配置
教程:http://jingyan.baidu.com/article/295430f136e8e00c7e0050b9.html
五、Eclipse上安装springsource-tool-suite
教程1:http://jingyan.baidu.com/album/1612d5005fd087e20f1eee10.html?picindex=1
教程2:http://jingyan.baidu.com/album/1612d5005fd087e20f1eee10.html?picindex=4
教程1:http://jingyan.baidu.com/album/1612d5005fd087e20f1eee10.html?picindex=1
教程2:http://jingyan.baidu.com/album/1612d5005fd087e20f1eee10.html?picindex=4
springsource-tool-suite所有版本下载地址:http://spring.io/tools/sts/all
六、创建test数据库,lgb_bigdata_user用户表
test数据库,默认已经创建
创建lgb_bigdata_user数据表
CREATE TABLE `lgb_bigdata_user` ( `id` int(10) unsigned NOT NULL AUTO_INCREMENT, `username` varchar(20) DEFAULT '' COMMENT '用户名', `password` varchar(50) DEFAULT '' COMMENT '用户密码', `email` varchar(50) DEFAULT '' COMMENT '邮箱地址', `createtime` datetime DEFAULT NULL COMMENT '注册时间', `updatetime` datetime DEFAULT NULL COMMENT '修改时间', `status` tinyint(1) unsigned zerofill DEFAULT '0' COMMENT '状态 0禁用1正常', PRIMARY KEY (`id`)) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='用户表';
七、mybatis generator eclipse插件的安装
插件下载地址:http://download.csdn.net/detail/alex_bean/9548260
教程:http://jingyan.baidu.com/album/9faa7231506ed8473c28cbee.html?picindex=1
插件下载地址:http://download.csdn.net/detail/alex_bean/9548260
教程:http://jingyan.baidu.com/album/9faa7231506ed8473c28cbee.html?picindex=1
mybatisGenrator.xml
<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE generatorConfiguration PUBLIC "-//mybatis.org//DTD MyBatis Generator Configuration 1.0//EN" "http://mybatis.org/dtd/mybatis-generator-config_1_0.dtd"><generatorConfiguration><context id="DB2Tables"targetRuntime="MyBatis3"><commentGenerator><property name="suppressDate" value="true"/><property name="suppressAllComments" value="true"/></commentGenerator><jdbcConnection driverClass="com.mysql.jdbc.Driver" connectionURL="jdbc:mysql://127.0.0.1:3306/test" userId="root" password=""></jdbcConnection><javaModelGenerator targetPackage="com.lgbproject.bigdata.user.model" targetProject="springmvctest\src\main\java"><property name="enableSubPackages" value="true"/><property name="trimStrings" value="true"/></javaModelGenerator><sqlMapGenerator targetPackage="com.lgbproject.bigdata.user.dao.mapper" targetProject="springmvctest\src\main\java"><property name="enableSubPackages" value="true"/></sqlMapGenerator><javaClientGenerator type="XMLMAPPER" targetPackage="com.lgbproject.bigdata.user.dao" targetProject="springmvctest\src\main\java"><property name="enableSubPackages" value="true"/></javaClientGenerator><table tableName="lgb_bigdata_user" domainObjectName="LgbBigdataUserEntity" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false"></table></context></generatorConfiguration>
八、eclipse搭建动态WEB项目
- 创建项目
File -> New -> Dynamic Web project 填写项目名称 project name: springmvctest
next -> remove src -> add Folder -> src/main/java、src/main/resource、src/test/java、src/test/resource
next -> 勾选Generate web.xml deployment descriptor -> finish
下图springmvctest项目结构图 - 创建maven配置文件pom.xml
springmvctest -> 右键 -> Configure -> Convert to Maven Project -> finish
pom.xml<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/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>springmvctest</groupId> <artifactId>springmvctest</artifactId> <version>0.0.1-SNAPSHOT</version> <packaging>war</packaging> <name>springmvctest</name> <description>springmvctest</description> <properties> <!-- spring版本号 --> <spring.version>4.3.0.RELEASE</spring.version> <!-- mybatis版本号 --> <mybatis.version>3.2.6</mybatis.version> <org.aspectj-version>1.8.7</org.aspectj-version> </properties> <dependencies> <!-- spring 核心功能包 spring-aop-4.3.0.RELEASE.jar spring-beans-4.3.0.RELEASE.jar spring-context-4.3.0.RELEASE.jar spring-core-4.3.0.RELEASE.jar spring-expression-4.3.0.RELEASE.jar commons-logging-1.2.jar --><dependency> <groupId>org.springframework</groupId> <artifactId>spring-context</artifactId> <version>${spring.version}</version></dependency><!-- spring 附加功能包 --><dependency><groupId>org.springframework</groupId><artifactId>spring-webmvc</artifactId><version>${spring.version}</version></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-tx</artifactId><version>${spring.version}</version></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-jdbc</artifactId><version>${spring.version}</version></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-test</artifactId><version>${spring.version}</version><scope>test</scope></dependency><!-- mybatis核心包 --> <dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis</artifactId> <version>${mybatis.version}</version> </dependency> <!-- AspectJ --><dependency><groupId>org.aspectj</groupId><artifactId>aspectjrt</artifactId><version>${org.aspectj-version}</version></dependency><dependency><groupId>org.aspectj</groupId><artifactId>aspectjweaver</artifactId><version>${org.aspectj-version}</version></dependency> <!-- mybatis/spring包 --> <dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis-spring</artifactId> <version>1.2.2</version> </dependency> <!-- Servlet --><dependency><groupId>javax.servlet</groupId><artifactId>javax.servlet-api</artifactId><version>3.1.0</version><scope>provided</scope></dependency><dependency><groupId>javax.servlet.jsp</groupId><artifactId>jsp-api</artifactId><version>2.1</version><scope>provided</scope></dependency><dependency><groupId>javax.servlet</groupId><artifactId>jstl</artifactId><version>1.2</version></dependency> <!-- Mysql官方驱动包 --> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>5.1.30</version> </dependency> <!-- 数据库缓存池 --> <dependency><groupId>com.mchange</groupId><artifactId>c3p0</artifactId><version>0.9.5.1</version></dependency> <!-- junit --> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.12</version> <!-- 表示开发的时候引入,发布的时候不会加载此包 --> <scope>test</scope> </dependency> <!-- slf4j --><dependency> <groupId>org.slf4j</groupId> <artifactId>jcl-over-slf4j</artifactId> <version>1.5.8</version> </dependency> <dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-api</artifactId> <version>1.5.8</version> </dependency> <dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-log4j12</artifactId> <version>1.5.8</version> </dependency> <dependency> <groupId>log4j</groupId> <artifactId>log4j</artifactId> <version>1.2.14</version> </dependency> <!-- JSON转换 --> <dependency> <groupId>org.codehaus.jackson</groupId> <artifactId>jackson-mapper-asl</artifactId> <version>1.9.13</version> </dependency> <!-- 格式化对象,方便输出日志 --> <dependency> <groupId>com.alibaba</groupId> <artifactId>fastjson</artifactId> <version>1.1.41</version> </dependency> <!-- 上传组件包 --> <dependency> <groupId>commons-fileupload</groupId> <artifactId>commons-fileupload</artifactId> <version>1.3.1</version> </dependency> <dependency> <groupId>commons-io</groupId> <artifactId>commons-io</artifactId> <version>2.4</version> </dependency> <dependency> <groupId>commons-codec</groupId> <artifactId>commons-codec</artifactId> <version>1.9</version> </dependency> <!-- netty5 alpha2 --> <dependency> <groupId>io.netty</groupId> <artifactId>netty-all</artifactId> <version>5.0.0.Alpha2</version></dependency> </dependencies> <build> <plugins> <plugin> <artifactId>maven-compiler-plugin</artifactId> <version>3.3</version> <configuration> <source>1.7</source> <target>1.7</target> </configuration> </plugin> <plugin> <artifactId>maven-war-plugin</artifactId> <version>2.6</version> <configuration> <warSourceDirectory>WebContent</warSourceDirectory> <failOnMissingWebXml>false</failOnMissingWebXml> </configuration> </plugin> </plugins> </build></project>
- 数据库连接池配置文件,src/main/resource内创建jdbc.properties
driver=com.mysql.jdbc.DriverjdbcUrl=jdbc:mysql://127.0.0.1:3306/test?useUnicode=true&characterEncoding=UTF-8user=rootpassword=123456idleConnectionTestPeriod=60maxIdleTime=240initialPoolSize=100acquireIncrement=5maxPoolSize=500minPoolSize=10
- 日志配置文件,src/main/resource内创建log4j.properties
# DEBUG,INFO,WARN,ERROR,FATALLOG_LEVEL=INFO#C-console, I-INFO, E-ERRORlog4j.rootLogger=${LOG_LEVEL},C,I,Elog4j.appender.C=org.apache.log4j.ConsoleAppenderlog4j.appender.C.Threshold = INFOlog4j.appender.C.Encoding=utf-8log4j.appender.C.layout=org.apache.log4j.PatternLayoutlog4j.appender.C.layout.ConversionPattern=[%-5p] %d{yyyy-MM-dd HH:mm:ss} (%F:%L):%m%nlog4j.appender.I=org.apache.log4j.DailyRollingFileAppenderlog4j.appender.I.File=${catalina.base}/logs/eidserver/info/log_daily#log4j.appender.I.File=c://eidserver/info/log_dailylog4j.appender.I.Threshold = INFOlog4j.appender.I.Append = truelog4j.appender.I.Encoding=utf-8log4j.appender.I.DatePattern='_'yyyy-MM-dd'.log'log4j.appender.I.layout=org.apache.log4j.PatternLayoutlog4j.appender.I.layout.ConversionPattern=[%-5p] %d{yyyy-MM-dd HH\:mm\:ss} (%F\:%L)\:%m%nlog4j.appender.I.MaxFileSize = 50MBlog4j.appender.I.MaxBackupIndex = 7log4j.appender.E=org.apache.log4j.DailyRollingFileAppenderlog4j.appender.E.File=${catalina.base}/logs/eidserver/error/log_error#log4j.appender.E.File=c://eidserver/error/log_errorlog4j.appender.E.Append = TRUE log4j.appender.E.Threshold = ERRORlog4j.appender.E.Encoding=utf-8log4j.appender.E.DatePattern='_'yyyy-MM-dd'.log'log4j.appender.E.layout=org.apache.log4j.PatternLayoutlog4j.appender.E.layout.ConversionPattern=[%-5p] %d{yyyy-MM-dd HH\:mm\:ss} (%F\:%L)\:%m%n log4j.appender.E.MaxFileSize = 50MB
- src/main/resource内创建spring.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:aop="http://www.springframework.org/schema/aop"xsi:schemaLocation="http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-4.3.xsdhttp://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsdhttp://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-4.3.xsd"> <aop:aspectj-autoproxy /> <context:component-scan base-package="com.lgbproject.bigdata" /> </beans>
- mybatis配置文件,src/main/resource内创建spring-mybatis.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:p="http://www.springframework.org/schema/p"xmlns:tx="http://www.springframework.org/schema/tx"xmlns:aop="http://www.springframework.org/schema/aop"xsi:schemaLocation="http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-4.3.xsdhttp://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsdhttp://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-4.3.xsdhttp://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-4.3.xsd"> <!-- 引入jdbc配置文件 --> <bean id="propertyConfigurer" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"> <property name="location" value="classpath:jdbc.properties" /> </bean> <!--创建jdbc数据源 --><bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource" destroy-method="close"p:driverClass="${driver}"p:jdbcUrl="${jdbcUrl}"p:user="${user}"p:password="${password}"p:idleConnectionTestPeriod="${idleConnectionTestPeriod}" p:maxIdleTime="${maxIdleTime}" p:initialPoolSize="${initialPoolSize}"p:acquireIncrement="${acquireIncrement}" p:maxPoolSize="${maxPoolSize}" p:minPoolSize="${minPoolSize}" p:preferredTestQuery="SELECT 1"p:maxConnectionAge="3000" /><!-- 创建SqlSessionFactory,同时指定数据源 spring和MyBatis完美整合,不需要mybatis的配置映射文件 --><bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean"><property name="dataSource" ref="dataSource" /><property name="mapperLocations"><list><value>classpath*:com/lgbproject/bigdata/**/dao/mapper/*Mapper.xml</value></list></property></bean><!-- Mapper接口所在包名,Spring会自动查找其下的Mapper --><bean class="org.mybatis.spring.mapper.MapperScannerConfigurer"p:basePackage="com.lgbproject.bigdata..*.dao"p:sqlSessionFactoryBeanName="sqlSessionFactory" /><!-- ===================================事务的配置================================== --><!-- (事务管理)transaction manager, use JtaTransactionManager for global tx --><bean id="transactionManager"class="org.springframework.jdbc.datasource.DataSourceTransactionManager"p:dataSource-ref="dataSource" /><!-- 基于注释的事务,当注释中发现@Transactional时,使用id为“transactionManager”的事务管理器 --><!-- 如果没有设置transaction-manager的值,则spring以缺省默认的事务管理器来处理事务,默认事务管理器为第一个加载的事务管理器 --><!-- 优先级:如果配置冲突,注解的比xml的高 --><tx:annotation-driven transaction-manager="transactionManager"/><!-- 配置事务特性 ,配置add、delete和update开始的方法,事务传播特性为required --><tx:advice id="txAdvice" transaction-manager="transactionManager"><tx:attributes><tx:method name="save*" propagation="REQUIRED" read-only="false" rollback-for="java.lang.Exception"/><tx:method name="insert*" propagation="REQUIRED" read-only="false" rollback-for="java.lang.Exception"/><tx:method name="add*" propagation="REQUIRED" read-only="false" rollback-for="java.lang.Exception"/><tx:method name="delete*" propagation="REQUIRED" read-only="false" rollback-for="java.lang.Exception"/><tx:method name="update*" propagation="REQUIRED" read-only="false" rollback-for="java.lang.Exception"/><tx:method name="modify*" propagation="REQUIRED" read-only="false" rollback-for="java.lang.Exception"/><tx:method name="edit*" propagation="REQUIRED" read-only="false" rollback-for="java.lang.Exception"/><tx:method name="login*" propagation="REQUIRED" read-only="false" rollback-for="java.lang.Exception"/><tx:method name="regist*" propagation="REQUIRED" read-only="false" rollback-for="java.lang.Exception"/><tx:method name="getAll*" propagation="REQUIRED" read-only="true" /></tx:attributes></tx:advice><!-- 配置哪些类的方法进行事务管理 --><aop:config><aop:pointcut id="allManagerMethod" expression="execution (* com.lgbproject.bigdata.*.service.*.*(..))" /><aop:advisor advice-ref="txAdvice" pointcut-ref="allManagerMethod" /></aop:config></beans>
- srpringmvc配置文件,spring-mvc.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:mvc="http://www.springframework.org/schema/mvc"xmlns:p="http://www.springframework.org/schema/p"xmlns:context="http://www.springframework.org/schema/context"xsi:schemaLocation="http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-4.3.xsdhttp://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsdhttp://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-4.3.xsd"> <!-- 注解驱动 --> <mvc:annotation-driven/> <!-- 对静态资源文件的访问 --><mvc:resources mapping="/images/**" location="/resources/images/" cache-period="31556926" /><mvc:resources mapping="/js/**" location="/resources/js/" cache-period="31556926" /><mvc:resources mapping="/css/**" location="/resources/css/" cache-period="31556926" /><!-- 定义跳转的文件的前后缀 ,视图模式配置--><bean class="org.springframework.web.servlet.view.InternalResourceViewResolver"p:prefix="/WEB-INF/views/"p:suffix=".jsp" /><!-- 启动Spring MVC的注解功能,完成请求和注解POJO的映射 --> <!-- <bean class="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter"/> --> <!-- 注解探测器 --><context:component-scan base-package="com.lgbproject.bigdata" /> <!-- 先走默认的web.xml配置的servlet,没有的话才找对应controller --><mvc:default-servlet-handler/><!-- 配置文件上传,如果没有使用文件上传可以不用配置,当然如果不配,那么配置文件中也不必引入上传组件包 --> <bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver"> <!-- 默认编码 --> <property name="defaultEncoding" value="utf-8" /> <!-- 文件大小最大值 --> <property name="maxUploadSize" value="10485760000" /> <!-- 内存中的最大值 --> <property name="maxInMemorySize" value="40960" /></bean></beans>
8. 配置web.xml
<?xml version="1.0" encoding="UTF-8"?><web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" id="WebApp_ID" version="3.0"> <display-name>springmvctest</display-name> <context-param> <param-name>contextConfigLocation</param-name> <param-value>classpath:spring.xml,classpath:spring-mybatis.xml</param-value> </context-param> <listener> <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class> </listener> <listener> <listener-class>org.springframework.web.util.IntrospectorCleanupListener</listener-class> </listener> <servlet> <servlet-name>springMvc</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <init-param> <param-name>contextConfigLocation</param-name> <param-value>classpath:spring-mvc.xml</param-value> </init-param> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>springMvc</servlet-name> <url-pattern>/</url-pattern> </servlet-mapping> <error-page> <error-code>404</error-code> <location>/resources/views/404.jsp</location> </error-page></web-app>
到此,springmvc + mybatis + maven 项目配置完毕,下面创建controller和service层,添加一条数据到lgb_bigdata_user表测试项目。
九,测试
- 创建com.lgbproject.bigdata.user.controller包,UserController.java文件
package com.lgbproject.bigdata.user.controller;import java.util.Date;import javax.servlet.http.HttpServletRequest;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.stereotype.Controller;import org.springframework.ui.ModelMap;import org.springframework.web.bind.annotation.RequestMapping;import com.lgbproject.bigdata.user.model.LgbBigdataUserEntity;import com.lgbproject.bigdata.user.service.UserService;@Controllerpublic class UserController {@Autowiredprivate UserService userService;@RequestMapping("user.html")public String user(ModelMap model, HttpServletRequest request) {LgbBigdataUserEntity record = new LgbBigdataUserEntity("xiaoming", "123456", "xiaoming@163.com", new Date(), new Date(), true);int result = userService.insertData(record);String id = "";model.addAttribute("id", String.valueOf(result));return "user/user";}}
- 创建WebContent/WEB-INF/views/user/目录,user.jsp文件
<%@ 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>User</title></head><body><h1>Hello User Page</h1><br>${id }</body></html>
- 创建com.lgbproject.bigdata.user.service包,UserService.java文件
package com.lgbproject.bigdata.user.service;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.stereotype.Service;import com.lgbproject.bigdata.user.dao.LgbBigdataUserEntityMapper;import com.lgbproject.bigdata.user.model.LgbBigdataUserEntity;@Servicepublic class UserService {@Autowiredprivate LgbBigdataUserEntityMapper lgbBigdataUserEntityMapper;public int insertData(LgbBigdataUserEntity record) {return lgbBigdataUserEntityMapper.insert(record);}}
- 浏览器访问地址 http://localhost:8080/springmvctest/user.html,显示下图表示成功
0 0
- spring4+springmvc+mybatis+maven框架搭建
- Spring4+SpringMVC+Mybatis+Maven
- maven+springMVC+mybatis框架搭建
- maven+springMVC+mybatis框架搭建
- Maven搭建SpringMVC+Mybatis框架
- (SSM框架)SpringMVC+Spring4+Mybatis+Maven环境快速搭建开发案例
- springmvc+spring+mybatis+maven框架搭建
- Maven+Spring+SpringMVC+MyBatis框架的搭建
- maven整合SpringMVC和mybatis框架搭建
- Maven搭建SpringMVC+Spring+MyBatis框架
- Maven搭建SpringMVC+Spring+MyBatis框架
- Maven搭建SpringMVC+Spring+MyBatis框架
- springmvc+mybatis+maven项目框架搭建
- Spring+SpringMVC+Mybatis+Maven搭建的框架
- 搭建maven+springmvc+mybatis
- SpringMVC+Mybatis+Maven搭建
- springmvc+spring4.04+mybatis框架整合
- springMVC+mybatis框架搭建
- SSL编程(1) 概述
- MVC和MVP的介绍
- ArcGis Engine编程之图层渲染与输入坐标画要素
- mysql子查询 带 In 关键字的子查询 带比较运算符的子查询 带 Exists 关键字的子查询 带 Any 关键字的子查询 带 All 关键字的子查询
- 对模式的一点看法
- spring4+springmvc+mybatis+maven框架搭建
- 解决apk添加签名之后不显示百度地图获取定位信息
- HTML5---Canvas-模拟9星球运行轨道
- 较详细的介绍JNI
- struts2 中 Actionsupport 的作用
- Factorial Trailing Zeroes
- 服务器宕机排查记录
- 今天的努力程度等于未来的富裕程度
- 浅谈数据仓库建设中的数据建模方法