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" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
id="WebApp_ID" version="2.5">
<display-name>Archetype Created Web Application</display-name>

<!-- 读取spring配置文件 -->
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:conf/spring.xml;
classpath:conf/spring-mybatis.xml
</param-value>
</context-param>
<!-- 设计路径变量值 -->
<context-param>
<param-name>webAppRootKey</param-name>
<param-value>springmvc.root</param-value>
</context-param>
<!-- 日志记录 -->
<context-param>
<!-- 日志配置文件路径 -->
<param-name>log4jConfigLocation</param-name>
<param-value>classpath:conf/log4j.properties</param-value>
</context-param>
<context-param>
<!-- 日志页面的刷新间隔 -->
<param-name>log4jRefreshInterval</param-name>
<param-value>60000000</param-value>
</context-param>

<!-- 启动日志-->
<listener>
<listener-class>org.springframework.web.util.Log4jConfigListener</listener-class>
</listener>
<!-- 启动Spring容器-->
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>

<!-- Spring mvc访问静态资源-->
<servlet-mapping>
<servlet-name>default</servlet-name>
<url-pattern>*.css</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>default</servlet-name>
<url-pattern>*.js</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>default</servlet-name>
<url-pattern>*.ico</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>default</servlet-name>
<url-pattern>*.gif</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>default</servlet-name>
<url-pattern>*.jpg</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>default</servlet-name>
<url-pattern>*.png</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>default</servlet-name>
<url-pattern>*.bmp</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>default</servlet-name>
<url-pattern>*.jpeg</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>default</servlet-name>
<url-pattern>*.swf</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>default</servlet-name>
<url-pattern>*.flv</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>default</servlet-name>
<url-pattern>*.xml</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>default</servlet-name>
<url-pattern>*.txt</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>default</servlet-name>
<url-pattern>*.htm</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>default</servlet-name>
<url-pattern>*.html</url-pattern>
</servlet-mapping>
<!-- Spring字符集过滤器 -->
<filter>
<filter-name>SpringEncodingFilter</filter-name>
<filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>UTF-8</param-value>
</init-param>
<init-param>
<param-name>forceEncoding</param-name>
<param-value>true</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>SpringEncodingFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>

<!-- 访问的首页,也可以在tomcat-web.xml配置-->
<welcome-file-list>
<welcome-file>index.html</welcome-file>
</welcome-file-list>
<!-- springMVC核心配置 -->
<servlet>
<servlet-name>springMVC</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>WEB-INF/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>/WEB-INF/errorpage/404.jsp</location>
</error-page>
<error-page>
<!-- 没有访问权限,访问被禁止 -->
<error-code>405</error-code>
<location>/WEB-INF/errorpage/405.jsp</location>
</error-page>
<error-page>
<!-- 内部错误 -->
<error-code>500</error-code>
<location>/WEB-INF/errorpage/500.jsp</location>
</error-page>
</web-app>

web容器执行的顺序是context-->listener-->filter-->servlet

因为用了Springmvc 做请求控制 所以首页<welcome-file-list>配置信息放在Springmvc配置的上面

Spring xml配置

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:context="http://www.springframework.org/schema/context"
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-3.0.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context.xsd">

<!-- 引入jdbc配置文件 -->
<context:property-placeholder location="classpath:conf/jdbc.properties"/>
<!-- 扫描文件 自动将service层和dao层组件注入 -->
<context:component-scan base-package="cn.springmvc.service"></context:component-scan>
<context:component-scan base-package="cn.springmvc.dao"></context:component-scan>
</beans>

1.读取jdbc的配置

2.扫面dao和service就行

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:p="http://www.springframework.org/schema/p"
xmlns:context="http://www.springframework.org/schema/context"
xmlns:aop="http://www.springframework.org/schema/aop"
xmlns:tx="http://www.springframework.org/schema/tx"
xmlns:util="http://www.springframework.org/schema/util"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-3.2.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-3.2.xsd
http://www.springframework.org/schema/tx
http://www.springframework.org/schema/tx/spring-tx-3.2.xsd
http://www.springframework.org/schema/aop
http://www.springframework.org/schema/aop/spring-aop-3.2.xsd
http://www.springframework.org/schema/util
http://www.springframework.org/schema/util/spring-util-3.2.xsd">

<bean id="dataSource" class="com.alibaba.druid.pool.DruidDataSource" init-method="init"
destroy-method="close" >
<property name="driverClassName">
<value>${jdbc_driverClassName}</value>
</property>
<property name="url">
<value>${jdbc_url}</value>
</property>
<property name="username">
<value>${jdbc_username}</value>
</property>
<property name="password">
<value>${jdbc_password}</value>
</property>
<!-- 连接池最大使用连接数 -->
<property name="maxActive">
<value>20</value>
</property>
<!-- 初始化连接大小 -->
<property name="initialSize">
<value>1</value>
</property>
<!-- 获取连接最大等待时间 -->
<property name="maxWait">
<value>60000</value>
</property>
<!-- 连接池最大空闲 -->
<property name="maxIdle">
<value>20</value>
</property>
<!-- 连接池最小空闲 -->
<property name="minIdle">
<value>3</value>
</property>
<!-- 自动清除无用连接 -->
<property name="removeAbandoned">
<value>true</value>
</property>
<!-- 清除无用连接的等待时间 -->
<property name="removeAbandonedTimeout">
<value>180</value>
</property>
<!-- 连接属性 -->
<property name="connectionProperties">
<value>clientEncoding=UTF-8</value>
</property>
</bean>

<!-- mybatis文件配置,扫描所有mapper文件 -->
<bean id="sqlSessionFactory"
class="org.mybatis.spring.SqlSessionFactoryBean"
p:dataSource-ref="dataSource"
p:configLocation="classpath:conf/mybatis-config.xml"
p:mapperLocations="classpath:mapper/*.xml"/><!-- configLocation为mybatis属性 mapperLocations为所有mapper-->

<!-- spring与mybatis整合配置,扫描所有dao.impl -->
<bean class="org.mybatis.spring.mapper.MapperScannerConfigurer"
p:basePackage="cn.springmvc.dao.Impl"
p:sqlSessionFactoryBeanName="sqlSessionFactory"/>
<!-- SqlSessionTemplate -->
<bean id="sqlSessionTemplate" class="org.mybatis.spring.SqlSessionTemplate">
<constructor-arg index="0" ref="sqlSessionFactory"/>
<constructor-arg index="1" value="BATCH"/>
</bean>

<!-- 对数据源进行事务管理 -->
<bean id="transactionManager"
class="org.springframework.jdbc.datasource.DataSourceTransactionManager"
p:dataSource-ref="dataSource"/>
</beans>

mybatis-config.xm为实体类启别名

<?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 alias="User" type="cn.springmvc.model.User"/>
</typeAliases>

<!-- 映射map -->
<mappers>
</mappers>
</configuration>

数据库和实体类的映射

<?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="cn.springmvc.dao.UserDAO">
<!-- 将db查询出来的结果映射到Model User -->
<resultMap type="cn.springmvc.model.User" id="user">
<id column="id" property="id"/>
<result column="name" property="name"/>
<result column="age" property="age"/>
<result column="hobby" property="hobby"/>
</resultMap>
<!-- 根据id查询 返回Gt_user类型-->
<select id="selectUserById" resultMap="user" parameterType="int">
select id,name,age,hobby
from t_user where pk = #{pk}
</select>
<!-- 查询所有user 返回resultMap类型-->
<select id="selectAllUser" resultMap="user">
select id,name,age,hobby from t_user
</select>
<!-- 指定parameterType=map 其中map的形式为Map<String,PageBean> map-->
<select id="selectuserByPage" resultMap="user" parameterType="map">
<!-- order by id asc是指对查询后的结果进行升序排序 -->
<!-- <![CDATA[
select * from
(select g.*,rownum rn from (select * from goods) g where 1=1 and rownum <= #{pageBean.endNumber})
where rn >= #{pageBean.startNumber}
order by id asc
]]> -->
<![CDATA[select * from t_user limit #{page.startNumber},#{page.endNumber}]]>
</select>
<!-- 新增t_user 参数类型为user-->
<insert id="insertUser" parameterType="user">
insert into t_user(name,age,hobby)
values(#{name},#{age},#{hobby})
</insert>
<!-- 更新user 参数类型为user-->
<update id="updateUser" parameterType="user">
update t_user
set name = #{name},age =#{age},hobby=#{hobby}
where id = #{id}
</update>
<!-- 删除user 参数类型为int-->
<delete id="deleteUser" parameterType="int">
delete from t_user
where id = #{id}
</delete>
</mapper>

JDBC的配置

jdbc_driverClassName=com.mysql.jdbc.Driver
jdbc_url=jdbc:mysql://ip/数据库名?useUnicode=true&amp;characterEncoding=UTF-8
jdbc_username=用户名
jdbc_password=密码

日志配置 log4j.properties

### set log levels ###
#log4j.rootLogger = debug , stdout , D , E
log4j.rootLogger = debug , stdout , D

### output to the console ###
log4j.appender.stdout = org.apache.log4j.ConsoleAppender
log4j.appender.stdout.Target = System.out
log4j.appender.stdout.layout = org.apache.log4j.PatternLayout
#log4j.appender.stdout.layout.ConversionPattern = %d{ABSOLUTE} %5p %c{ 1 }:%L - %m%n
log4j.appender.stdout.layout.ConversionPattern = %-d{yyyy-MM-dd HH:mm:ss} [%c]-[%p] %m%n

### Output to the log file ###
log4j.appender.D = org.apache.log4j.DailyRollingFileAppender
log4j.appender.D.File = ${springmvc.root}/WEB-INF/logs/log.log
log4j.appender.D.Append = true
log4j.appender.D.Threshold = DEBUG
log4j.appender.D.layout = org.apache.log4j.PatternLayout
log4j.appender.D.layout.ConversionPattern = %-d{yyyy-MM-dd HH:mm:ss} [ %t:%r ] - [ %p ] %m%n

### Save exception information to separate file ###
log4j.appender.D = org.apache.log4j.DailyRollingFileAppender
log4j.appender.D.File = ${springmvc.root}/WEB-INF/logs/error.log
log4j.appender.D.Append = true
log4j.appender.D.Threshold = ERROR
log4j.appender.D.layout = org.apache.log4j.PatternLayout
log4j.appender.D.layout.ConversionPattern = %-d{yyyy-MM-dd HH:mm:ss} [ %t:%r ] - [ %p

接下来就是接口

package cn.springmvc.dao;

import java.util.List;
import java.util.Map;

import cn.springmvc.model.User;
import cn.springmvc.pageQurty.PageBean;

public interface UserDAO {
/**
* 娣诲姞鐢ㄦ埛
* @author 鐜嬫灄
* 2015骞�鏈�9鏃�
*/
public int insertUser(User user);
/**
* 鏇存柊鐢ㄦ埛
* @author 鐜嬫灄
* 2015骞�鏈�9鏃�
*/
public int updateUser(User user);
/**
* 鍒犻櫎鐢ㄦ埛
* @author 鐜嬫灄
* 2015骞�鏈�9鏃�
*/
public int deleteUser(Integer id);
/**
* 鏌ヨ涓�釜鐢ㄦ埛
* @author 鐜嬫灄
* 2015骞�鏈�9鏃�
*/
public User findUserById(Integer id);
/**
* 鎵�湁鐢ㄦ埛
* @author 鐜嬫灄
* 2015骞�鏈�9鏃�
*/
public List<User> findAllUser();
/**
* 鐢ㄦ埛鍒嗛〉
* @author 鐜嬫灄
* 2015骞�鏈�9鏃�
*/
public List<User> findUserByPage(Map<String, PageBean> map);

}

DAO实现类

package cn.springmvc.dao.Impl;

import java.util.List;
import java.util.Map;

import org.apache.ibatis.session.SqlSessionFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import cn.springmvc.dao.UserDAO;
import cn.springmvc.model.User;
import cn.springmvc.pageQurty.PageBean;

@Service
public class UserDaoImpl implements UserDAO {

@Autowired
private SqlSessionFactory sessionFactory;

@Override
public int insertUser(User user) {
// clark--userMapper.xml 娑擃厼鎳¢崥宥団敄闂傜ame = clark,insertGood---insert id
int result = sessionFactory.openSession().insert(
"cn.springmvc.dao.UserDAO.insertUser", user);
// mybatis娴滃澧块棁锟筋洣閹靛濮╅幓鎰唉閿涘矂绮拋銈勮礋false
sessionFactory.openSession().commit();
return result;
}

@Override
public int updateUser(User user) {
int result = sessionFactory.openSession().update(
"cn.springmvc.dao.UserDAO.updateUser", user);
// mybatis娴滃澧块棁锟筋洣閹靛濮╅幓鎰唉閿涘矂绮拋銈勮礋false
sessionFactory.openSession().commit();
return result;
}

@Override
public int deleteUser(Integer id) {
int result = sessionFactory.openSession().delete(
"cn.springmvc.dao.UserDAO.deleteUser", id);
// mybatis娴滃澧块棁锟筋洣閹靛濮╅幓鎰唉閿涘矂绮拋銈勮礋false
sessionFactory.openSession().commit();
return result;
}

@Override
public User findUserById(Integer id) {
User user = sessionFactory.openSession().selectOne(
"cn.springmvc.dao.UserDAO.selectUserById", id);
return user;
}

@Override
public List<User> findAllUser() {
List<User> users = sessionFactory.openSession().selectList(
"cn.springmvc.dao.UserDAO.selectAllUser");
return users;
}

@Override
public List<User> findUserByPage(Map<String, PageBean> map) {
List<User> users = sessionFactory.openSession().selectList(
"cn.springmvc.dao.UserDAO.selectuserByPage", map);
return users;
}

}

Service接口

package cn.springmvc.service;

import java.util.List;
import java.util.Map;

import cn.springmvc.model.User;
import cn.springmvc.pageQurty.PageBean;

public interface UserService {
/**
* 娣诲姞鐢ㄦ埛
* @author 鐜嬫灄
* 2015骞�鏈�9鏃�
*/
public int insertUser(User user);
/**
* 鏇存柊鐢ㄦ埛
* @author 鐜嬫灄
* 2015骞�鏈�9鏃�
*/

public int updateUser(User user);
/**
* 鍒犻櫎鐢ㄦ埛
* @author 鐜嬫灄
* 2015骞�鏈�9鏃�
*/

public int deleteUser(Integer id);
/**
* 鏌ヨ涓�釜鐢ㄦ埛
* @author 鐜嬫灄
* 2015骞�鏈�9鏃�
*/

public User findUserById(Integer id);
/**
* 鏌ヨ鎵�湁鐢ㄦ埛
* @author 鐜嬫灄
* 2015骞�鏈�9鏃�
*/

public List<User> findAllUser();

/**
* 鐢ㄦ埛鍒嗛〉
* @author 鐜嬫灄
* 2015骞�鏈�9鏃�
*/
public List<User> findUserByPage(Map<String, PageBean> map);
}

service实现类

package cn.springmvc.service.impl;

import java.util.HashMap;
import java.util.List;
import java.util.Map;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import cn.springmvc.dao.UserDAO;
import cn.springmvc.model.User;
import cn.springmvc.pageQurty.PageBean;
import cn.springmvc.service.UserService;
/**
* UserService瀹炵幇
* @author 鐜嬫灄
* 2015骞�鏈�9鏃�
* @version 1.0
*/

@Service
public class UserServiceImpl implements UserService{
/**
* 瀹炵幇鎺ュ彛
*/
@Autowired
private UserDAO userDAO;
/**
* 娣诲姞鐢ㄦ埛
*/
@Override
public int insertUser(User user) {
int insertUser = userDAO.insertUser(user);
return insertUser;
}
/**
* 鏇存柊鐢ㄦ埛
*/
@Override
public int updateUser(User user) {
return userDAO.updateUser(user);
}
/**
* 鍒犻櫎鐢ㄦ埛
*/
@Override
public int deleteUser(Integer id) {
int deleteUser = userDAO.deleteUser(id);
return deleteUser;
}
/**
* 鏌ヨ涓�釜鐢ㄦ埛
*/
@Override
public User findUserById(Integer id) {
User findUserById = userDAO.findUserById(id);
return findUserById;
}
/**
* 鏌ヨ鎵�湁鐢ㄦ埛
*/
@Override
public List<User> findAllUser() {
List<User> findAllUser = userDAO.findAllUser();
return findAllUser;
}
/**
* 鐢ㄦ埛鍒嗛〉
*/
@Override
public List<User> findUserByPage(Map<String, PageBean> map) {
//Example page涔焟apper.xml鐨勫弬鏁颁竴鑷�
/*Map<String,PageBean> map=new HashMap<String,PageBean>();
PageBean pageBean=new PageBean();
pageBean.setStartNumber(0);
pageBean.setEndNumber(2);
map.put("page", pageBean);*/
List<User> findUserByPage = userDAO.findUserByPage(map);
return findUserByPage;
}
}

最后controller

package cn.springmvc.controller;

import java.util.List;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;

import cn.springmvc.model.User;
import cn.springmvc.service.UserService;

@Controller
@RequestMapping("/home")
public class UserController {
@Autowired
private UserService userService;

@RequestMapping("/user")
public String index(Model model){
List<User> findAllUser = userService.findAllUser();
model.addAttribute("UserAll",findAllUser);
return "index";
}

}

访问

最后配置通过域名或者IP直接访问项目

tomcat conf-->server.xml配置修改

<Connector connectionTimeout="20000" port="80" protocol="HTTP/1.1" redirectPort="8443"/>

在<host><host>中间 加上

<Context path="" docBase="项目名(就是部署到webapps下面的名字)" debug="0"/>

上面项目已经设置首页了 直接输入localhost或者IP或者你申请的域名直接访问项目。

Spring_Springmvc_mybatis一般配置的更多相关文章

  1. 配置android sdk 环境

    1:下载adnroid sdk安装包 官方下载地址无法打开,没有vpn,使用下面这个地址下载,地址:http://www.android-studio.org/

  2. Android Studio配置 AndroidAnnotations——Hi_博客 Android App 开发笔记

    以前用Eclicps 用习惯了现在 想学学 用Android Studio 两天的钻研终于 在我电脑上装了一个Android Studio 并完成了AndroidAnnotations 的配置. An ...

  3. react-router 组件式配置与对象式配置小区别

    1. react-router 对象式配置 和 组件式配置    组件式配置(Redirect) ----对应---- 对象式配置(onEnter钩子) IndexRedirect -----对应-- ...

  4. 总结:Mac前端开发环境的搭建(配置)

    新年新气象,在2016年的第一天,我入手了人生中第一台自己的电脑(大一时好友赠送的电脑在一次无意中烧坏了主板,此后便不断借用别人的或者网站的).macbook air,身上已无分文...接下来半年的房 ...

  5. Android Studio 多个编译环境配置 多渠道打包 APK输出配置

    看完这篇你学到什么: 熟悉gradle的构建配置 熟悉代码构建环境的目录结构,你知道的不仅仅是只有src/main 开发.生成环境等等环境可以任意切换打包 多渠道打包 APK输出文件配置 需求 一般我 ...

  6. Virtual Box配置CentOS7网络(图文教程)

    之前很多次安装CentOS7虚拟机,每次配置网络在网上找教程,今天总结一下,全图文配置,方便以后查看. Virtual Box可选的网络接入方式包括: NAT 网络地址转换模式(NAT,Network ...

  7. [linux]阿里云主机的免登陆安全SSH配置与思考

    公司服务器使用的第三方云端服务,即阿里云,而本地需要经常去登录到服务器做相应的配置工作,鉴于此,每次登录都要使用密码是比较烦躁的,本着极速思想,我们需要配置我们的免登陆. 一 理论概述 SSH介绍 S ...

  8. nginx配置反向代理或跳转出现400问题处理记录

    午休完上班后,同事说测试站点访问接口出现400 Bad Request  Request Header Or Cookie Too Large提示,心想还好是测试服务器出现问题,影响不大,不过也赶紧上 ...

  9. Swift3.0服务端开发(一) 完整示例概述及Perfect环境搭建与配置(服务端+iOS端)

    本篇博客算是一个开头,接下来会持续更新使用Swift3.0开发服务端相关的博客.当然,我们使用目前使用Swift开发服务端较为成熟的框架Perfect来实现.Perfect框架是加拿大一个创业团队开发 ...

随机推荐

  1. PHP生成订单号(产品号+年的后2位+月+日+订单号)

    require '../common.inc.php'; /* * 产品号+年的后2位+月+日+订单数 * @param [Int] $prodcutId 产品号 * @param [Int] $tr ...

  2. pymssql 安装测试

    平台 : windows 7 32位 数据库 : SQLSERVER 2008 python 2.7  & pymssql模块 数据库和python 等模块安装说明省略 以下贴出测试代码: 单 ...

  3. 2016041601 - linux上安装maven

    在linux系统中安装maven,个人目前使用ubuntu15.1系统. 要想使用maven,前提条件必须配置好java. 1.检查java信息. 命令:echo $JAVA_HOME 和java - ...

  4. 2014年度辛星css教程夏季版第一节

    CSS是Cascading Style Sheets的缩写,即层叠样式表,它用于表现HTML的样式,即HTML只是去写该网页有哪些内容,至于如何去表现它们,由CSS去定制. ************* ...

  5. 转载 -- iOS数据持久化存储

    作者:@翁呀伟呀 授权本站转载 概论 所谓的持久化,就是将数据保存到硬盘中,使得在应用程序或机器重启后可以继续访问之前保存的数据.在iOS开发中,有很多数据持久化的方案,接下来我将尝试着介绍一下5种方 ...

  6. new reader

    BufferedReader bufferedReader = new BufferedReader( new StringReader(charset.decode(inBuffer).toStri ...

  7. 《深入理解javascript原型和闭包系列》 知识点整理

    深入理解javascript原型和闭包系列 对原型和闭包等相关知识的讲解,由浅入深,通俗易懂,每个字都值得细细研究. 一.一切都是对象 1. typeof操作符输出6种类型:string boolea ...

  8. javascript pattern

    bing:javascript pattern baidu:module pattern javascript高级程序设计 姊妹篇:ajax高级程序设计 http://wenku.baidu.com/ ...

  9. TC Asia Competition

    250PT不说了.很水得一题. 500PT 给定n(<=1e18),求最大的因子,且这个因子为完全平方,假设这个因子为x那么满足x*x*y = n, 一直枚举因子到n^(1/3)就可以了. 最后 ...

  10. USB Type-C接口完美无瑕?小心这五点

    今年下半年发布的新手机中,采用USB Type-C接口与传统micro USB接口的手机,所占比例大概是一半对一半.采用Type-C接口的手机大多数都是国产手机,而像三星.摩托罗拉以及索尼等老牌的手机 ...