haoxiaolan 2024-01-06 12:35 采纳率: 34.7%
浏览 5
已结题

dao层无法自动注入

dao层不能自动注入

img

配置文件

spring:
  jpa:
    hibernate:
      ddl-auto: update
      database: mysql
      database-platform: org.hibernate.dialect.MySQL5Dialect
    show-sql: true
  datasource:
    username: root
    password: 123456
    url: jdbc:mysql://127.0.0.1:3306/friend?serverTimezone=UTC&characterEncoding=utf-8
    driver-class-name: com.mysql.cj.jdbc.Driver

img

实体

@Data
@Entity
@Table(name="user")
public class User {

    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    public Integer id;
    public String name;
    public String password;
}

dao层

@Repository
public interface UserDao extends JpaRepository<User, Integer> {
}

img

  • 写回答

1条回答 默认 最新

  • CSDN-Ada助手 CSDN-AI 官方账号 2024-01-06 14:32
    关注

    【相关推荐】



    • 您可以看一下 张旭老师的【造物者】手把手带你做快递管理系统课程中的 【造物者】第十节·快递Dao编写(上)小节
    • 除此之外, 这篇博客: DAO层的写法总结中的 DAO层的写法总结: 部分也许能够解决你的问题, 你可以仔细阅读以下内容或跳转源博客中阅读:

      本文中进行的总结,主要针对的是持久层,并不需要Web工程的环境,只需要Java工程即可。

      DAO层持有实体层的对象,DAO层的增删改查写法会很多。下面总结一下三种写法:这里只给出查询的写法,其他写法类似。

      1、最原始的JDBC写法         

      2、Apache的 Commons DbUtils

      3、Hhibernate 或 Mybatis方式

      其中,方式1大家应该都会了,方式2是黑马视频中提过的,我们主要是理解。方式3里的Mybatis在本文中有详细的代码和结构、配置展示。

      mysql 5.5 建库、建表、两行示例数据的语句:(账号和密码都是root)

               create database studentdb;
      		 use studentdb;
      		 
      		 create table student(
      		 id int primary key auto_increment,
      		 name varchar(20),
      		 school varchar(20)
      		 );
      		 
      		 insert into student(name,school) values('zhangsan','ningxiashifan');
      		 insert into student(name,school) values('lisi','ningxiashifan');

      然后假设实体类 User:(虽然JDBC方式跟这没关系。。。但还是先写在这里)

      package domain;
      
      public class User {
      	
      	private int id;
      	private String name;
      	private String school;
      	
      	public int getId() {
      		return id;
      	}
      	public void setId(int id) {
      		this.id = id;
      	}
      	public String getName() {
      		return name;
      	}
      	public void setName(String name) {
      		this.name = name;
      	}
      	public String getSchool() {
      		return school;
      	}
      	public void setSchool(String school) {
      		this.school = school;
      	}
      	public String toString() {
      		return "User [id=" + id + ", name=" + name + ", school=" + school + "]";
      	}
      	public User(int id, String name, String school) {
      		super();
      		this.id = id;
      		this.name = name;
      		this.school = school;
      	}
      }

    如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^
    评论

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 1月7日
  • 创建了问题 1月6日

悬赏问题

  • ¥15 mmo能不能做客户端怪物
  • ¥15 osm下载到arcgis出错
  • ¥15 Dell g15 每次打开eiq portal后3分钟内自动退出
  • ¥200 使用python编写程序,采用socket方式获取网页实时刷新的数据,能定时print()出来就行。
  • ¥15 matlab如何根据图片中的公式绘制e和v的曲线图
  • ¥15 我想用Python(Django)+Vue搭建一个用户登录界面,但是在运行npm run serve时报错了如何解决?
  • ¥15 QQ邮箱过期怎么恢复?
  • ¥15 登录他人的vue项目显示服务器错误
  • ¥15 (标签-android|关键词-app)
  • ¥15 comsol仿真压阻传感器