当前位置: 首页 > wzjs >正文

承德市网站开发厦门做网站最好的公司

承德市网站开发,厦门做网站最好的公司,六安网站建设费用,上海做网站的公司排名1.SpringBoot概述 传统方式构建spring的应用程序 导入依赖十分的繁琐,还要解决jar包版本依赖的问题 项目配置繁琐,applicationContext要对所有bean对象先声明再使用 SpringBoot构建应用程序 起步依赖 之前用传统的spring导入jar包主要有四个&#xff…

1.SpringBoot概述

传统方式构建spring的应用程序

导入依赖十分的繁琐,还要解决jar包版本依赖的问题

项目配置繁琐,applicationContext要对所有bean对象先声明再使用

SpringBoot构建应用程序

起步依赖

之前用传统的spring导入jar包主要有四个:core,aop,beans,web,context包

现在只需要引用一个spring-boot-starter-web 就可以将相关依赖的包一起引入。

自动配置 

之前整合mybatis的时候,需要先将SqlSessionFactoryBean,MapperScannerConfiguer

先注入到bean容器中,而现在只需要引入mybatis的启动jar包,boot就会自动将这个两个

对象声明!

其他特性

 2.SpringBoot入门演示

步骤

构建spring-initializr

 

创建结构:

有人会问为啥没有版本号呢。

往前拉,会发现,boot程序的父工程,会统一帮我们管理依赖包的版本号,便于统一管理!

构建Controller中的HelloController

package com.ygd.springbootquickstart.controller;import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;/*** @author ygd*/
@RestController
public class HelloController {@RequestMapping("/hello")public String hello(){return "hello word~";}
}

启动项目完成测试(默认地址就是Tomcat服务器的默认地址)

或者用手动创建SpringBoot工程 

很简单就不展示了

3.配置文件

properties配置文件

boot启动的默认配置,包括端口号和路径

我们可以去properties文件中进行端口和路径的修改。

yml/yaml配置文件 

yml配置信息的书写和获取

如何进行一个yml文件的书写

用@Value注解对yml配置文件的信息进行获取

使用@ConfigurationProperties(prefix='前缀')获取yml文件配置信息

SpringBoot引入Mybatis 

我们只需要引入mybaits的起步依赖和驱动jar包,然后在application.yml文件中配置一下连接的信息就可以了。

mybatis的工作原理解释

以这张图为例, controller中会调用MemberService的方法,底层会通过动态代理,创建一个实现了这个Service接口的MemberServiceImpl代理对象,然后又会去调用这个代理对象相关的Dao方法,dao下的MemberDao声明了对数据库表的各种操作方法。再通过动态代理创建一个实现MemberDao接口的对象,方法在xml文件中进行扫描调用。

而下面的MemberMapper.xml文件就是对具体方法的实现。

传统的mybatis引入,要引入mybatis依赖和mybatis与spring整合的依赖,以及一些bean对象的声明。

而现在引入mybatis的起步依赖:会自动的将mybatis和整合的依赖导入,以及三个bean对象的声明注入自动装配好。 

案例:

首先创建相应的数据库和user表

create database if not exists mybatis;use mybatis;create table user(id int unsigned primary key auto_increment comment 'ID',name varchar(100) comment '姓名',age tinyint unsigned comment '年龄',gender tinyint unsigned comment '性别, 1:男, 2:女',phone varchar(11) comment '手机号'
) comment '用户表';insert into user(id, name, age, gender, phone) VALUES (null,'白眉鹰王',55,'1','18800000000');
insert into user(id, name, age, gender, phone) VALUES (null,'金毛狮王',45,'1','18800000001');
insert into user(id, name, age, gender, phone) VALUES (null,'青翼蝠王',38,'1','18800000002');
insert into user(id, name, age, gender, phone) VALUES (null,'紫衫龙王',42,'2','18800000003');
insert into user(id, name, age, gender, phone) VALUES (null,'光明左使',37,'1','18800000004');
insert into user(id, name, age, gender, phone) VALUES (null,'光明右使',48,'1','18800000005');

 引入mybatis的驱动依赖,和mybatis的起步依赖。

也可以引入这个mysql的驱动jar包

 配置application.yml文件

配置相应的数据源

 当然在引入Druid数据源jar包后也可以用其他数据库的数据池

项目分部结构图

配置UserMapper

package com.ygd.springbootquickstart.mapper;import com.ygd.springbootquickstart.entity.User;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Select;/*** @author ygd* 之前这里可以用xml文件进行一个开发*/
@Mapper
public interface UserMapper {@Select("select * from user where id = #{id}")public User findById(Integer id);
}

userservice

package com.ygd.springbootquickstart.service;import com.ygd.springbootquickstart.entity.User;/*** @author ygd*/
public interface UserService {public User findById(Integer id);
}

UserServiceImpl

package com.ygd.springbootquickstart.service.impl;import com.ygd.springbootquickstart.entity.User;
import com.ygd.springbootquickstart.mapper.UserMapper;
import com.ygd.springbootquickstart.service.UserService;
import jakarta.annotation.Resource;
import org.springframework.stereotype.Service;/*** @author ygd*/
@Service
public class UserServiceImpl implements UserService {@Resourceprivate UserMapper userMapper;@Overridepublic User findById(Integer id) {return userMapper.findById(1);}
}

Bean的管理

Bean扫描

之前我们可以使用以下的标签和注解来扫描bean注入到容器中

先在只需要写一个boot的启动类就行了。

这个注解只能扫秒启动类所在的包和其子包下的注解声明。

我们也可以加入@ComponentScan(basePackages = "com.ygd") 指定扫描哪些包的类。

 Bean注册

@Bean主要是对第三方库的类的注入

我们可以在启动类里面这么写,这个Country是引入的第三方库的jar包下的类。 

可以通过类型获取Contry.class或者通过名字:默认的名字是类名小写!!

建议别写在启动类里面,写入到一个专门导入第三库类的类

用@Import注解手动注入:即时这个配置类可能不在启动类包下

我们也可以实现ImportSelector接口:然后将要扫描的所有的配置类都写在这个方法里面,启动类启动的时候,会去找到实现这个接口的类,然后将里面所有的配置类进行一个自动的注入。

 

自定义组合注解

@SpringBootApplication就是个组合注解(他有很多注解)。

自定义注解:

首先要写入两个元注解

@Target(ElementType.type):用来修饰注解类的。

@Rentention:下图是 RetentionPolicy.RUNTIME:编译器将把注解记录在 class 文件中. 当运行 Java 程序时, JVM 会保留注解. 程序可以 通过反射获取该注解

 

 4. 自动配置原理


文章转载自:

http://tdViC32Y.txLtb.cn
http://XlKh2lSf.txLtb.cn
http://DlpBKQ7I.txLtb.cn
http://U4fbxmlH.txLtb.cn
http://0iCcQkqH.txLtb.cn
http://wthAqTbb.txLtb.cn
http://sv1MFP9u.txLtb.cn
http://EAuKdcoh.txLtb.cn
http://xg6urimh.txLtb.cn
http://4OPhpECQ.txLtb.cn
http://yj7D824g.txLtb.cn
http://tXyfGCht.txLtb.cn
http://x3d6syGC.txLtb.cn
http://TntZbevw.txLtb.cn
http://d82x2Ft5.txLtb.cn
http://H2DzYUBT.txLtb.cn
http://p39odw2O.txLtb.cn
http://HZJWdO0I.txLtb.cn
http://9YsAFcpV.txLtb.cn
http://y6V0paTa.txLtb.cn
http://Ipp3o21p.txLtb.cn
http://i3WO3zxj.txLtb.cn
http://xPcgrGG5.txLtb.cn
http://4HUOVxvS.txLtb.cn
http://kG0FxZ2c.txLtb.cn
http://LKUob959.txLtb.cn
http://wIQ6zB9f.txLtb.cn
http://ibKuRPgk.txLtb.cn
http://bqakpkiK.txLtb.cn
http://lrDzjPLg.txLtb.cn
http://www.dtcms.com/wzjs/665949.html

相关文章:

  • 提高网站权重的方法阿里云服务器 个人网站
  • 好的建网站的公司易记域名网站大全
  • 做一个网站维护多少钱wordpress 防盗链
  • 网站开发必须要搭建环境吗wordpress删除月份归档
  • 响应式网站工具wordpress开发手册下载地址
  • 怎样把自己做的网页放在网站里国内新闻最新消息10条
  • 惠州做棋牌网站建设哪家便宜企业微信小程序如何开发
  • wordpress主题google朝阳seo排名
  • 衡水商城网站建设厦门网页设计代做
  • 学校网站建设交流汇报网站自然排名怎么优化
  • 一个大学网站做的好坏于否的标准怎么样做一个个人网站
  • 品牌网站建设 蝌蚪小7抖抈短视频app下载安装
  • 不用下载就能看的网站的浏览器河南专业网站建设
  • 搭建免费网站小程序可以用手机网站吗
  • 给网站可以怎么做外链网站根目录是哪里
  • 南京网站建设知识搜了网
  • 黄石网站制作公司wordpress快速配图
  • 国家级示范职业学校 建设网站PHP网站建设项目经验
  • 域名买完后如何做网站刚刚大连发布紧急通知
  • 网站建站和维护广州必去十大景点排名
  • 网站开发流程比较合理企业管理培训课程定制
  • 做侵权视频网站自己怎样做广告链接
  • 淘宝网站制作多少钱长春网站建设技术托管
  • php网站开发用什么ide湘潭网站建设企业
  • 网站域名查企业邮箱自适应网站建设电话
  • 建筑施工证查询网站网站受攻击
  • 辽阳市网站建设网站假设教程
  • 建站知乎网站建设公司哪家好 在线磐石网络
  • 商业网站模板下载唐山网站建设设计
  • 做网站盐城商城网站建设招聘