本人是一个从事.net的程序员,之前也从未写过博客,都是代码上都是抄抄别人的,博客的大手子说什么就是什么,如今行业内卷严重,公司内部也越来越多新项目采用java技术,也开始跟着学习java了,写博客的原因也没啥就是记录自己的学习经历。
因为本人.net 开发经验与java有部分相似估摸着学起来应该还好,先从SpringBoot搞起,闲话不扯,直接步入正题。
1. 新建项目
2 选择Spring Initializr 然后下一步
3 选中 Spring Web 暂时只有简单的hello world 所以就选中web即可。
4 项目结构如下图
其中
java文件夹下为业务代码
resources文件夹下放的都是一些静态文件
test 文件夹下放的都是单元测试对应类
MyspringwebApplication.类如下图为项目的启动入口。类似.net 的 program.cs类,执行main方法。
我理解Spring 框架中已有了依赖注入与IOC容器,会根据注解自动初始化依赖关系并注入对应的服务实例,我们只需要对controller类添加路由特性后 spring框架自动将生成基于restful风格的api
5 com.dylan.mysprintweb.myspringweb 下添加新的【软件包】controller 并添加 HelloWorldController,进行spring的controller注解与包引用 如下图
其中
@Controller 为控制器注解。 类似.net core 2.1中的apicontroller特性
@RequestMapping为控制器路由注解 类似.net core的Route特性
@ResponseBody 我理解应该是把String的值以reponse的body形式响应。
6 然后运行
浏览器打开如图
7当然 我们一般都不会直接把业务代码写在Controller层,所以 我们新建一个【service】文件夹,存放业务逻辑代码
@Service表明依赖注入框架中将IHelloWorldService注册为服务。
@Component表明需要将其添加到IOC容器中与接口IHello绑定实现关系,我认为这个依赖关系应该是Spring框架本身自动寻找的,类型.net 中的反射原理查找程序集的关系映射。
HelloWorldController代码修改如下
@Autowired注解 应该是表示使用时,依赖注入框架会自动对该类型进行装配。 类型.net core的属性注入方式。
OK 重新run起来看
依旧可以,成功!
这是本人第一次写博客 ,有些地方都是自己理解,完全没有java的相关经验,肯定漏洞百出,有啥问题欢迎大家指正。
源码地址:下载