Dubbo(开源分布式服务框架),是阿里巴巴公司开发的一个高性能优秀的服务框架,可以和spring框架无缝集成
Sprngboot 的特征?
独立的spring程序
嵌入式的tomcat
提供了可选择性的starter
自动配置spring和第三方库
提供产品化的特征
不需要使用代码生成工具(不要xml文件)
mvn -v 检查mvn的版本
java -version 检查jdk版本
jdk版本必须在1.6以上,10以内
maven版本3.2.3以上
集成springbood
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>1.5.17.RELEASE</version>
</parent>
集成springmvc 依赖
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
main方法运行
@RestController
@SpringBootApplication
public class Example {
@RequestMapping("/a")
String home() {
return "Hello World!";
}
@RequestMapping("/map")
HashMap map() {
HashMap map=new HashMap();
map.put("id", 1);
map.put("name", "zs");
return map;
}
public static void main(String[] args) throws Exception {
SpringApplication.run(Example.class, args);
}
集成redis 依赖
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-redis</artifactId>
</dependency>
例子
@Autowired
StringRedisTemplate srt;
@RequestMapping("/redis")
public String redis() {
srt.boundValueOps("name").set("张三yy");
return srt.boundValueOps("name").get();
}
集成数据库mysql 依赖
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-jpa</artifactId>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
</dependency>
dbcp druid c3p0性能比较?driud最好
druid 依赖
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>druid</artifactId>
<version>1.1.9</version>
</dependency>
手动连接jdbc
@Value("${spring.datasource.driver-class-name}")
private String driverClass;
@Value("${spring.datasource.url}")
private String url;
@Value("${spring.datasource.username}")
private String username;
@Value("${spring.datasource.password}")
private String password;
@Bean
public DataSource dataSouce() {
DruidDataSource dds=null;
try {
dds=new DruidDataSource();
dds.setDriverClassName(driverClass);
dds.setUrl(url);
dds.setUsername(username);
dds.setPassword(password);
dds.addFilters("stat,wall,og4j");
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return dds;
}
@Bean
public ServletRegistrationBean statViewServlet(){
//创建servlet注册实体
ServletRegistrationBean servletRegistrationBean = new ServletRegistrationBean(new StatViewServlet(),"/druid/*");
//设置ip白名单
servletRegistrationBean.addInitParameter("allow","127.0.0.1");
//设置ip黑名单,如果allow与deny共同存在时,deny优先于allow
servletRegistrationBean.addInitParameter("deny","192.168.0.19");
//设置控制台管理用户
servletRegistrationBean.addInitParameter("loginUsername","druid");
servletRegistrationBean.addInitParameter("loginPassword","123456");
//是否可以重置数据
servletRegistrationBean.addInitParameter("resetEnable","false");
return servletRegistrationBean;
}
@Bean
public FilterRegistrationBean statFilter(){
//创建过滤器
FilterRegistrationBean filterRegistrationBean = new FilterRegistrationBean(new WebStatFilter());
//设置过滤器过滤路径
filterRegistrationBean.addUrlPatterns("/*");
//忽略过滤的形式
filterRegistrationBean.addInitParameter("exclusions","*.js,*.gif,*.jpg,*.png,*.css,*.ico,/druid/*");
return filterRegistrationBean;
}
访问http://127.0.0.1:8080/druid/index.html
账号密码在config类里
自动连接jdbc 首先下载依赖
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>druid-spring-boot-starter</artifactId>
<version>1.1.10</version>
</dependency>
然后创建一个properties的资源文件
#server.port=8080
spring.redis.host=192.168.0.247
spring.redis.password=ps123456
spring.datasource.url=jdbc:mysql://localhost/unit02
spring.datasource.username=root
spring.datasource.password=ps123456
spring.datasource.driver-class-name=com.mysql.jdbc.Driver
spring.datasource.type=com.alibaba.druid.pool.DruidDataSource
#设置账号访问
spring.datasource.druid.stat-view-servlet.login-username=druid
#设访问密码
spring.datasource.druid.stat-view-servlet.login-password=123456
#慢查询
spring.datasource.druid.filter.stat.slow-sql-millis=1
自定义banner
在resouce资源文件中创建一个banner.txt的文件,然后把log复制进来修改即可
开发工具
springboot包含了一些开发工具集 只需要引用 spring-boot-devtools 依赖 开发工具在开发阶段默认开启 在被打包的程序 比如jar包 通过 java -jar运行
自动禁用 开发工具集
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-devtools</artifactId>
<optional>true</optional>
</dependency>
</dependencies>
在spring.properties添加启动配置 (添加了maven依赖 该参数默认为true 如果想禁用 改成false)