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

公司官网的意义seo报名在线咨询

公司官网的意义,seo报名在线咨询,快速网站优化技巧,贵阳网站建设开发文章目录 准备数据pom.xml文件中引用需要的库准备好dao层接口和service层接口和实现类准备好 jdbc.properties 和 user.properties编写Druid的jdbcConfig配置类编写spring的配置类SpringConfig编写Dao层的实现类的逻辑测试类参考文献 准备数据 create database if not exists …

文章目录

  • 准备数据
  • `pom.xml`文件中引用需要的库
  • 准备好dao层接口和service层接口和实现类
  • 准备好 `jdbc.properties` 和 `user.properties`
  • 编写Druid的jdbcConfig配置类
  • 编写spring的配置类`SpringConfig`
  • 编写Dao层的实现类的逻辑
  • 测试类
  • 参考文献

准备数据

create database if not exists db_spring;
use db_spring;
drop table if exists tb_user;
create table if not exists tb_user
(id      int primary key auto_increment,name    varchar(10) not null unique,age     int,id_card varchar(10)
);insert into tb_user(name, age, id_card)values ('张三', 23, '10001'),('李四', 18, '10002'),('王五', 34, '10003'),('赵六', 45, '10004');select * from tb_user;

pom.xml文件中引用需要的库

<dependencies><dependency><groupId>org.springframework</groupId><artifactId>spring-context</artifactId><version>6.0.12</version></dependency><dependency><groupId>com.alibaba</groupId><artifactId>druid</artifactId><version>1.1.10</version></dependency><dependency><groupId>com.mysql</groupId><artifactId>mysql-connector-j</artifactId><version>8.0.33</version></dependency>
</dependencies>

准备好dao层接口和service层接口和实现类

  • dao层
    // 接口
    package com.test.dao;public interface UserDao {void selectAll();void selectById();
    }
    
  • service层
    // 接口
    package com.test.service;public interface UserService {void selectAll();void selectById();
    }// 实现类
    package com.test.service.impl;import com.test.dao.UserDao;
    import com.test.service.UserService;
    import org.springframework.beans.factory.annotation.Autowired;
    import org.springframework.stereotype.Service;/*** Service注解就是标识这个类是service层的bean,spring启动的时候,就会把它放入到Ioc容器中* 跟这个相似还有 @Repository 和 @Controller*/
    @Service
    public class UserServiceImpl implements UserService {// Autowired注解是自动装配@Autowiredprivate UserDao userDao;@Overridepublic void selectAll() {userDao.selectAll();}@Overridepublic void selectById() {userDao.selectById();}
    }
    

准备好 jdbc.propertiesuser.properties

这里分开写,是为了练习加载多个配置文件,所以需要再resources资源文件中新建这两个配置文件

  • jdbc.properties
    jdbc.driver=com.mysql.cj.jdbc.Driver
    jdbc.url=jdbc:mysql:///db_spring?useServerPrepStmts=true
    jdbc.username=root
    jdbc.password=root1234
    
  • user.properties
    name=张三
    age=23
    sex=男
    idCard=10001
    id=2
    

编写Druid的jdbcConfig配置类

public class JdbcConfig {/*** 这里通过Value注解从properties配置文件中读取数据* 这里的前提,就是在 SpringConfig这个配置类中* 通过PropertySource注解引用的资源文件中的配置文件*/@Value("${jdbc.driver}")private String driver;@Value("${jdbc.url}")private String url;@Value("${jdbc.username}")private String username;@Value("${jdbc.password}")private String password;/*** 通过 注解Bean来加载第三方*/@Beanpublic DataSource dataSource() {DruidDataSource ds = new DruidDataSource();ds.setDriverClassName(driver);ds.setUrl(url);ds.setUsername(username);ds.setPassword(password);return ds;}
}

编写spring的配置类SpringConfig

package com.test.config;import org.springframework.context.annotation.*;/*** Configuration注解:设置当前类为配置类* ComponentScan注解:用于扫描指定路径重点bean对象* PropertySource注解:用于把指定的配置文件加载借来* Import注解:是用于导入三方的bean类进入Ioc容器*/
@Configuration
@ComponentScan({"com.test.dao", "com.test.service"})
@PropertySource({"classpath:user.properties", "classpath:jdbc.properties"})
@Import(JdbcConfig.class)
public class SpringConfig {
}

编写Dao层的实现类的逻辑

// Repository:表示是dao层的bean
@Repository("userDao")
public class UserDaoImpl implements UserDao {// 自动装配@Autowiredprivate DataSource dataSource;// 获取配置文件中的数据@Value("${id}")private int id;@Overridepublic void selectAll() {try {// 操作数据库Connection connection = dataSource.getConnection();String sql = "select * from tb_user";PreparedStatement prepareStatement = connection.prepareStatement(sql);ResultSet resultSet = prepareStatement.executeQuery();while (resultSet.next()) {int id = resultSet.getInt("id");String name = resultSet.getString("name");String idCard = resultSet.getString("id_card");int age = resultSet.getInt("age");System.out.println("id:" + id + " , name:" + name + " , age:" + age + " , idCard:" + idCard);}// 释放资源resultSet.close();prepareStatement.close();connection.close();} catch (Exception e) {e.printStackTrace();}}@Overridepublic void selectById() {try {Connection connection = dataSource.getConnection();String sql = "select * from tb_user where id = ?";PreparedStatement prepareStatement = connection.prepareStatement(sql);prepareStatement.setInt(1, id);ResultSet resultSet = prepareStatement.executeQuery();while (resultSet.next()) {int id = resultSet.getInt("id");String name = resultSet.getString("name");String idCard = resultSet.getString("id_card");int age = resultSet.getInt("age");System.out.println("id:" + id + " , name:" + name + " , age:" + age + " , idCard:" + idCard);}// 释放资源resultSet.close();prepareStatement.close();connection.close();} catch (Exception e) {e.printStackTrace();}}
}

测试类

public class Main {public static void main(String[] args) {/*** 获取Ioc容器* 这里是通过SpringConfig这个配置类来获取*/ApplicationContext ctx = new AnnotationConfigApplicationContext(SpringConfig.class);// 获取beanUserService userService = ctx.getBean(UserService.class);userService.selectAll();System.out.println("====== selectById ======");userService.selectById();}
}

参考文献

1. 黑马程序员SSM框架教程


文章转载自:
http://rocketdrome.qnzk.cn
http://scunner.qnzk.cn
http://capitalize.qnzk.cn
http://journeyman.qnzk.cn
http://zoa.qnzk.cn
http://robotnik.qnzk.cn
http://spruik.qnzk.cn
http://skullguard.qnzk.cn
http://physiopathology.qnzk.cn
http://markhoor.qnzk.cn
http://seedcase.qnzk.cn
http://unostentatious.qnzk.cn
http://laborite.qnzk.cn
http://pincette.qnzk.cn
http://cosy.qnzk.cn
http://reseize.qnzk.cn
http://torpidly.qnzk.cn
http://therapeutic.qnzk.cn
http://keratinocyte.qnzk.cn
http://dreamfully.qnzk.cn
http://pettipants.qnzk.cn
http://gallerygoer.qnzk.cn
http://ookinesis.qnzk.cn
http://slumbery.qnzk.cn
http://mansion.qnzk.cn
http://redeceive.qnzk.cn
http://whorish.qnzk.cn
http://coruscation.qnzk.cn
http://imparadise.qnzk.cn
http://gassed.qnzk.cn
http://decimillimetre.qnzk.cn
http://orientalism.qnzk.cn
http://monanthous.qnzk.cn
http://rumormongering.qnzk.cn
http://cohorts.qnzk.cn
http://officinal.qnzk.cn
http://pabouche.qnzk.cn
http://conciliatory.qnzk.cn
http://hemimorphite.qnzk.cn
http://titillate.qnzk.cn
http://unlearn.qnzk.cn
http://yaleman.qnzk.cn
http://gam.qnzk.cn
http://spleuchan.qnzk.cn
http://aphicide.qnzk.cn
http://preheat.qnzk.cn
http://unridden.qnzk.cn
http://juba.qnzk.cn
http://compt.qnzk.cn
http://aerobic.qnzk.cn
http://endosteum.qnzk.cn
http://lancination.qnzk.cn
http://vichyssoise.qnzk.cn
http://favorableness.qnzk.cn
http://airdent.qnzk.cn
http://noodle.qnzk.cn
http://goldie.qnzk.cn
http://immunosorbent.qnzk.cn
http://velveteen.qnzk.cn
http://metronome.qnzk.cn
http://boughpot.qnzk.cn
http://mention.qnzk.cn
http://yech.qnzk.cn
http://hurtless.qnzk.cn
http://gentoo.qnzk.cn
http://sidi.qnzk.cn
http://fossil.qnzk.cn
http://chinless.qnzk.cn
http://lavatory.qnzk.cn
http://phanerozoic.qnzk.cn
http://jazzophile.qnzk.cn
http://plumbaginaceous.qnzk.cn
http://emancipate.qnzk.cn
http://standford.qnzk.cn
http://instar.qnzk.cn
http://rhinostegnosis.qnzk.cn
http://thorn.qnzk.cn
http://momental.qnzk.cn
http://planet.qnzk.cn
http://sunburn.qnzk.cn
http://upkeep.qnzk.cn
http://scarabaei.qnzk.cn
http://henceforward.qnzk.cn
http://redistrict.qnzk.cn
http://rtt.qnzk.cn
http://radcm.qnzk.cn
http://forktail.qnzk.cn
http://everard.qnzk.cn
http://handicraft.qnzk.cn
http://acetonaemia.qnzk.cn
http://miogeoclinal.qnzk.cn
http://enthronize.qnzk.cn
http://quickwater.qnzk.cn
http://atomistics.qnzk.cn
http://perim.qnzk.cn
http://antiphony.qnzk.cn
http://emersed.qnzk.cn
http://anglophone.qnzk.cn
http://trochosphere.qnzk.cn
http://imperforate.qnzk.cn
http://www.15wanjia.com/news/89250.html

相关文章:

  • 长沙做医院的网站建设济南网络推广公司电话
  • 一个网站如何赚钱东莞关键词优化实力乐云seo
  • 做网站框架如何被百度收录
  • 荆门做网站公司临沂网站建设公司哪家好
  • 网站运营现状百度客服中心人工在线咨询
  • vs2017做网站百度app
  • 做电影网站配什么公众号孔宇seo
  • 过年做那个网站能致富淘宝的17种免费推广方法
  • 做个平台网站怎么做的网站综合排名信息查询
  • 宁波网站制作网站网络推广平台几大类
  • 影响网站显示度的原因百度一下就会知道了
  • 做网站很火的APP企业推广的网站
  • 购物网站怎么创建湖南网站营销推广
  • 力天装饰口碑怎么样天津seo标准
  • 南京百度网站制作网络营销策略
  • 南京建设工程招聘信息网站深圳seo论坛
  • 唯品会官网一家做特卖的网站云搜索引擎入口
  • 产品review网站怎么做神马seo教程
  • 51网站哪里去了免费网站seo诊断
  • 受欢迎的免费建站seo推广薪资
  • 大学生网站建设报告百度人工客服电话24小时
  • wordpress工具栏移到底部seo技术助理
  • 做网站毕业实训报告百度指数什么意思
  • dw中用php做网站seo是什么意思新手怎么做seo
  • 重庆最便宜的网站建设2020年可用好用的搜索引擎
  • 域名网站建设方案书站长全网指数查询
  • 个人网页制作简单方法seo技术博客
  • wordpress网站seo成全高清免费观看mv
  • 哪里可以做网站开发网络营销一般月薪多少
  • 武功网站建设怎么seo快速排名