IntelliJ IDEA 2017版 spring-boot基础补充,原理详解
(2)业务开发用注解,比如:Service中注入bean等;
package com.springboot.exersize.pojo; /**
* Created by liuya
* User: liuya
* Date: 2018/3/24
* Time: 21:35
* projectName:20180324versionone
*/
public class User { private String userName; private String passWord; private Integer age; public String getUserName() {
return userName;
} public void setUserName(String userName) {
this.userName = userName;
} public String getPassWord() {
return passWord;
} public void setPassWord(String passWord) {
this.passWord = passWord;
} public Integer getAge() {
return age;
} public void setAge(Integer age) {
this.age = age;
}
}
) Dao源码
package com.springboot.exersize.dao; import com.springboot.exersize.pojo.User; import java.util.ArrayList;
import java.util.List; /**
* Created by liuya
* User: liuya
* Date: 2018/3/24
* Time: 22:00
* projectName:20180324versionone
*/
public class UserDao { public List<User> userList() { List<User> userList = new ArrayList<>(); for (int i = 0; i < 10; i++) {
User user = new User();
user.setUserName("username_" + i);
user.setPassWord("password_" + i);
user.setAge(i + 1);
userList.add(user);
}
return userList;
}
}
(5)Service源码
package com.springboot.exersize.service; import com.springboot.exersize.dao.UserDao;
import com.springboot.exersize.pojo.User;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import java.util.List; /**
* Created by liuya
* User: liuya
* Date: 2018/3/24
* Time: 22:04
* projectName:20180324versionone
*/
@Service
public class UserService { @Autowired
private UserDao userDao; public List<User> userList() {
return this.userDao.userList();
} }
(6) Java配置文档
package com.springboot.exersize.config; import com.springboot.exersize.dao.UserDao;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.ComponentScan;
import org.springframework.context.annotation.Configuration; /**
* Created by liuya
* User: liuya
* Date: 2018/3/24
* Time: 22:06
* projectName:20180324versionone
*/ @Configuration
@ComponentScan(basePackages = "com.springboot.exersize.service")
public class SpringConf { @Bean
public UserDao getUserDao() {
return new UserDao();
} }
(7)测试代码
package com.liuyangfirst.test; import com.liuyangfirst.conf.SpringConf;
import com.liuyangfirst.pojo.User;
import com.liuyangfirst.service.UserService;
import org.springframework.context.annotation.AnnotationConfigApplicationContext; import java.util.List; /**
* Created by liuya
* User: liuya
* Date: 2018/3/24
* Time: 22:10
* projectName:20180324versionone
*/
public class Test { public static void main(String[] args) {
// 通过Java配置来实例化Spring容器
AnnotationConfigApplicationContext context = new AnnotationConfigApplicationContext(SpringConf.class); // 在Spring容器中获取Bean对象
UserService userService = context.getBean(UserService.class); // 调用对象中的方法
List<User> list = userService.userList(); for (User user : list) {
System.out.println(user.getUserName() + ", " + user.getPassWord() + ", " + user.getPassWord());
} // 销毁该容器
context.destroy();
} }
(8)成功运行
(9)原理图解
IntelliJ IDEA 2017版 spring-boot基础补充,原理详解的更多相关文章
- IntelliJ IDEA 2017版 spring-boot加载jsp配置详解(详细图文实例)
一.创建项目 (File--->New-->Project) 2.项目配置内容 3.选择配置项目的Group包名,Artifact项目名称 4.选择项目类型为web类型 5.创建成功,点击 ...
- Spring Boot的启动器Starter详解
Spring Boot的启动器Starter详解 作者:chszs,未经博主允许不得转载.经许可的转载需注明作者和博客主页:http://blog.csdn.net/chszs Spring Boot ...
- Spring Boot 之使用 Json 详解
Spring Boot 之使用 Json 详解 简介 Spring Boot 支持的 Json 库 Spring Web 中的序列化.反序列化 指定类的 Json 序列化.反序列化 @JsonTest ...
- Spring Boot(八):RabbitMQ详解
Spring Boot(八):RabbitMQ详解 RabbitMQ 即一个消息队列,主要是用来实现应用程序的异步和解耦,同时也能起到消息缓冲,消息分发的作用. 消息中间件在互联网公司的使用中越来越多 ...
- Spring boot注解(annotation)含义详解
Spring boot注解(annotation)含义详解 @Service用于标注业务层组件@Controller用于标注控制层组件(如struts中的action)@Repository用于标注数 ...
- Spring Boot Actuator监控使用详解
在企业级应用中,学习了如何进行SpringBoot应用的功能开发,以及如何写单元测试.集成测试等还是不够的.在实际的软件开发中还需要:应用程序的监控和管理.SpringBoot的Actuator模块实 ...
- Spring Boot中@ConditionalOnProperty使用详解
在Spring Boot的自动配置中经常看到@ConditionalOnProperty注解的使用,本篇文章带大家来了解一下该注解的功能. Spring Boot中的使用 在Spring Boot的源 ...
- Spring Boot启动命令参数详解及源码分析
使用过Spring Boot,我们都知道通过java -jar可以快速启动Spring Boot项目.同时,也可以通过在执行jar -jar时传递参数来进行配置.本文带大家系统的了解一下Spring ...
- (转)Intellij IDEA 2017 debug断点调试技巧与总结详解篇
背景:详细介绍idea的debug调试过程 Intellij IDEA 2017 debug断点调试技巧与总结详解篇
随机推荐
- as3 去掉字符串空白问题
去掉内容的所有空白 function trim(str:String):String { })/g,""); } //[ ]内是一个中文空格一个英文空格 {}是说匹配一个到多个 / ...
- OpenSL ES 查询设备支持的SL Profiles
opensl es 提供了三种类型:分别是 SL_PROFILES_PHONE(手机):SL_PROFILES_MUSIC(音乐); SL_PROFILES_GAME (游戏). 如果你使用的手机的开 ...
- c++ vector, 迭代器
现代c++尽量使用vector(容器)和迭代器(相当于指针),少使用数组和指针,除非对程序执行效率有很高的要求. 容器优点,易于扩展,可通过push_back方法动态添加元素,数组不能动态添加元素. ...
- webserive学习记录3-eclipse创建webservice
在用J2EE版的ECLIPSE学习WEBSERVICE的时候发现原来直接用该ECLIPSE就可以创建webservice,然后就自己动手用ECLIPSE自带的功能来建立WEBSERVICE服务端和客户 ...
- Linux 的伪终端的基本原理 及其在远程登录(SSH,telnet等)中的应用
本文介绍了linux中伪终端的创建,介绍了终端的回显.行缓存.控制字符等特性,并在此基础上解释和模拟了telnet.SSH开启远程会话的过程. 一.轻量级远程登录 之前制作的一块嵌入式板子,安装了嵌入 ...
- php 时间操作归类
对于php时间表示有两种: 一.‘xxxx-xx-xx'这种容易分辨的格式 二.unix时间戳格式 他们的之间的转换关系是: 常规格式转时间戳 $T='2014-05-24'; $Tr=strtoti ...
- JAVA数组详解
package com.keke.demo; import java.text.ParseException;import java.text.SimpleDateFormat;import java ...
- Jacobi 矩阵
求微分其实就是线性化,导数其实就是线性空间之间的线性变换,Jaocibian矩阵本质上就是导数. 比如,映射在处的导数就是在处的切空间到在处的切空间之间的线性映射.切空间都是矢量空间,都有基底,所以这 ...
- adb设置逍遥游
. adb设置模拟器属性imei.imsi.手机号.sim卡号2. adb设置充电模式3. 开启|关闭飞行模式4. 获取所有已安装程序apk路径和包名5. adb对指定设备执行指令6. 安装应用7. ...
- Java 命令行运行参数
Java在运行已编译完成的类时,是通过java虚拟机来装载和执行的,java虚拟机通过操作系统命令JAVA_HOME"bin"java –option 来启动,-option为虚拟 ...