package com.niit.controllers;
import java.util.List;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.ModelAttribute;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.servlet.ModelAndView;
import com.DaoImpl.BreadDAOImpl;
import com.model.Bread;
@Controller
public class BreadController {
@Autowired
public BreadDAOImpl breadDAOImpl;
@RequestMapping("/bread")
public ModelAndView getAllUsers()
{
List<Bread>ll=breadDAOImpl.getAllBread();
ModelAndView ss=new ModelAndView("bread","allbread",ll);
return ss;
}
}
package com.Dao;
import java.util.List;
import org.springframework.stereotype.Repository;
import org.springframework.stereotype.Service;
import com.model.Bread;
@Repository("BreadDAO")
public interface BreadDAO {
public List<Bread> getAllBread();
}
package com.DaoImpl;
import java.util.*;
import java.util.logging.Logger;
import javax.transaction.Transaction;
import javax.transaction.Transactional;
import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Repository;
import org.springframework.stereotype.Service;
import com.Dao.BreadDAO;
import com.model.Bread;
@Repository
public class BreadDAOImpl implements BreadDAO {
@Autowired
SessionFactory sessionFac;
//List<Bread> breads;
@SuppressWarnings("unchecked")
public List<Bread> getAllBread() {
Session session = sessionFac.openSession();
session.beginTransaction();
List<Bread> breadlist = session.createQuery("from Bread").list();
session.getTransaction().commit();
session.close();
return breadlist;
}
public BreadDAOImpl(SessionFactory sessionFactory)
{
super();
sessionFac=sessionFactory;
}
}
Hiber配置:
package com.hibernateConfig;
import java.util.*;
import javax.sql.DataSource;
import org.hibernate.SessionFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.ComponentScan;
import org.springframework.context.annotation.Configuration;
import org.springframework.jdbc.datasource.DriverManagerDataSource;
import org.springframework.orm.hibernate4.HibernateTransactionManager;
import org.springframework.orm.hibernate4.LocalSessionFactoryBuilder;
import org.springframework.transaction.annotation.EnableTransactionManagement;
import com.model.*;
import com.Dao.*;
import com.DaoImpl.BreadDAOImpl;
@Configuration
@ComponentScan("com.niit")
@EnableTransactionManagement
public class HibernateConfig {
@Bean(name="datasource")
public DataSource getH2() {
System.out.println("Hibernate initiated");
DriverManagerDataSource dt=new DriverManagerDataSource();
dt.setDriverClassName("org.h2.Driver");
dt.setUrl("jdbc:h2:~/test");
dt.setUsername("sa");
dt.setPassword("");
System.out.println("conncection es");
return dt;
}
private Properties getHiberProps(){
Properties p=new Properties();
p.put("hibernate.dialect","org.hibernate.dialect.H2Dialect");
p.put("hibernate.show_sql","true");
p.put("hibernate.hbm2ddl.auto", "update");
return p;
}
@Autowired
@Bean(name="sessionFactory")
public SessionFactory getSession(DataSource datasource) {
LocalSessionFactoryBuilder lsfb=new LocalSessionFactoryBuilder(datasource);
lsfb.addProperties(getHiberProps());
lsfb.addAnnotatedClass(Bread.class);
return lsfb.buildSessionFactory();
}
@Autowired
@Bean(name="transactionManager")
public HibernateTransactionManager getTransaction(SessionFactory sessionFactory) {
HibernateTransactionManager tm=new HibernateTransactionManager(sessionFactory);
return tm;
}
@Autowired
@Bean("name=BreadDAO")
public BreadDAO getBreadDAO(SessionFactory sessionFac)
{
System.out.println("BreadDAO object creation");
return new BreadDAOImpl(sessionFac);
}
}
在@configuration
类中,您以以下方式定义了面包道:
@Autowired
@Bean("name=BreadDAO")
public BreadDAO getBreadDAO(SessionFactory sessionFac) {
System.out.println("BreadDAO object creation");
return new BreadDAOImpl(sessionFac);
}
这个定义公开了一个名为breaddao的breaddao
bean类型。
要将此bean注入breadController
中,必须将属性的定义从breaddaoimpl
更改为breaddao
:
@Autowired
public BreadDAO breadDAO;
启动应用程序上下文时出错。若要显示条件报告,请在启用“调试”的情况下重新运行应用程序。2020-08-05 09:53:05.348 错误 46991 --- [ 主] o.s.boot.Spring 应用程序: 应用程序运行失败 组织.Spring框架.豆子.工厂.不满意依赖性异常:创建名称为“产品控制器”的Bean时出错:通过字段“产品存储库”表示的不满意的依赖关系;嵌套的异常是组织.spri
我尝试使用Mybatis XML配置实现一个简单的CRUD应用程序已经是第三天了,我对整个Spring生态系统还是新手。这个问题有点长,但我只分享了要点。 我有一个类: 然后我写了一个映射器 在许多教程和解答之后,我创建了一个,文件也在`Resources文件夹中。 在中,我所做的与在文件中所做的几乎相同 以下是项目结构截图: 嵌套异常是org.springframework.beans.fact
我有这个错误已经有好几个星期了,我不知道如何修复它。类似的堆栈溢出解决方案不适合我的项目。 我目前使用mysql数据库,但遇到这个问题,每当试图启动服务器: StackTrace [错误]无法执行目标组织。springframework。boot:spring boot maven插件:1.5.6。发布:在project iPbackend上运行(默认cli):运行时发生异常。null:Invoc
创建名称为clienteRestController的bean时出错:通过字段clientService表示的不满意的依赖项。 创建名称为'clientServiceImpl'的bean时出错:通过字段'client道'表示的不满意的依赖项。 创建名称为ICliente道的bean时出错:初始化方法调用失败。 嵌套异常java.lang.IllegalArgumentExcishop:不是托管类型
我查了一些类似的问题,但这些答案帮不了我。 错误 组织。springframework。豆。工厂未满足的依赖项异常:创建名为“accountController”的bean时出错:未满足的依赖项通过字段“accountService”表示;嵌套的异常是org。springframework。豆。工厂NoSuchBeanDefinitionException:没有类型为“com”的合格bean。服务
我想在我的项目中实现Spring Security性。但不管我怎么做,我总是会犯同样的错误。 我创建了必要的类(,,)。它们在同一个包下,但我得到以下错误。 这是发生问题的的一部分 2018-12-31 23:58:10.616信息9952---[main]j.LocalContainerEntityManagerFactoryBean:初始化了持久性单元“默认”的JPA EntityManage