项目结构图像
import java.util.Properties;
import javax.sql.DataSource;
import org.apache.commons.dbcp2.BasicDataSource;
import org.hibernate.SessionFactory;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.ComponentScan;
import org.springframework.context.annotation.Configuration;
import org.springframework.orm.hibernate5.HibernateTransactionManager;
import org.springframework.orm.hibernate5.LocalSessionFactoryBuilder;
import org.springframework.transaction.annotation.EnableTransactionManagement;
@Configuration
@ComponentScan(basePackages={"com.app.maven.dto"})
@EnableTransactionManagement
public class UserConfig {
// Change the below based on the DBMS you choose
private final static String DATABASE_URL = "jdbc:mysql://localhost:3306/SpringMAVEN?createDatabaseIfNotExist=true";
private final static String DATABASE_DRIVER = "com.mysql.jdbc.Driver";
private final static String DATABASE_DIALECT = "org.hibernate.dialect.MySQLDialect";
private final static String DATABASE_USERNAME = "root";
private final static String DATABASE_PASSWORD = "root";
// dataSource bean will be available
@Bean
public DataSource getDataSource() {
BasicDataSource dataSource = new BasicDataSource();
// Providing the database connection information
dataSource.setDriverClassName(DATABASE_DRIVER);
dataSource.setUrl(DATABASE_URL);
dataSource.setUsername(DATABASE_USERNAME);
dataSource.setPassword(DATABASE_PASSWORD);
return dataSource;
}
// sessionFactory bean will be available
@Bean
public SessionFactory getSessionFactory(DataSource dataSource) {
LocalSessionFactoryBuilder builder = new LocalSessionFactoryBuilder(dataSource);
builder.addProperties(getHibernateProperties());
builder.scanPackages("com.app.maven.dto");
return builder.buildSessionFactory();
}
// All the hibernate properties will be returned in this method
private Properties getHibernateProperties() {
Properties properties = new Properties();
properties.put("hibernate.dialect", DATABASE_DIALECT);
properties.put("hibernate.show_sql", "true");
properties.put("hibernate.format_sql", "true");
properties.put("hibernate.hbm2ddl.auto", "update");
return properties;
}
// transactionManager bean
@Bean
public HibernateTransactionManager getTransactionManager(SessionFactory sessionFactory) {
HibernateTransactionManager transactionManager = new HibernateTransactionManager(sessionFactory);
return transactionManager;
}
}
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns = "http://www.springframework.org/schema/beans"
xmlns:xsi = "http://www.w3.org/2001/XMLSchema-instance"
xmlns:context = "http://www.springframework.org/schema/context"
xmlns:mvc="http://www.springframework.org/schema/mvc"
xsi:schemaLocation = "http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-3.0.xsd
http://www.springframework.org/schema/mvc
http://www.springframework.org/schema/mvc/spring-mvc-3.0.xsd">
<context:component-scan base-package="com.app.maven"></context:component-scan>
<mvc:resources location="/resources/" mapping="/resources/**"/>
<bean id="IRVR" class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="prefix" value="/"></property>
<property name="suffix" value=".jsp"></property>
</bean>
</beans>
@Controller
@RequestMapping("/")
public class UserController {
@Autowired
private UserService service;
@RequestMapping(value="/create",method=RequestMethod.POST)
public ModelAndView add(@ModelAttribute User user)
{
System.out.println("add controller");
service.add(user);
ModelAndView mv=new ModelAndView("views/sucess");
mv.addObject("info",user.getlName());
return mv;
}
}
@Service
public class UserServiceImpl implements UserService {
@Autowired
private UserDAO userDAO;
public void add(User user) {
userDAO.add(user);
}
}
@Repository("userDAO")
@Transactional
public class UserDAOImpl implements UserDAO{
@Autowired
private SessionFactory sf;
public void add(User user) {
try {
sf.getCurrentSession().persist(user);
} catch (Exception e) {
e.printStackTrace();
}
}
}
获取此错误
unsatisfiedDependencyException:创建名为“user controller”的bean时出错:通过字段“service”表示的不满足依赖项;嵌套异常为org.springframework.beans.factory.unsatisfieddependencyexception:创建名为“user serviceimpl”的bean时出错:通过字段“user dao”表示的不满足依赖项;嵌套异常为org.springframework.beans.factory.unsatisfieddependencyexception:创建名为“user dao”的bean时出错:通过字段“sf”表示的未满足的依赖项;嵌套异常为org.springframework.beans.factory.BeanCreationException:创建com.app.maven.config.UserConfig中定义的名为“Get SessionFactory”的bean时出错:通过工厂方法实例化bean失败;嵌套异常为org.springframework.beans.beanInstantiationException:无法实例化[org.hibernate.sessionFactory]:工厂方法“get sessionFactory”引发异常;嵌套异常为java.lang.NullPointerException org.SpringFramework.Beans.Factory.Annotation.AutoWiredAnnotationBeanPostProcessor$AutoWiredFieldElement.Inject(AutoWiredAnnotationBeanPostProcessor.java:587)
unsatisfiedDependencyException:创建名为“user serviceimpl”的bean时出错:通过字段“user dao”表示的未满足的依赖项;嵌套异常为org.springframework.beans.factory.unsatisfieddependencyexception:创建名为“user dao”的bean时出错:通过字段“sf”表示的未满足的依赖项;嵌套异常为org.springframework.beans.factory.BeanCreationException:创建com.app.maven.config.UserConfig中定义的名为“Get SessionFactory”的bean时出错:通过工厂方法实例化bean失败;嵌套异常为org.springframework.beans.beanInstantiationException:无法实例化[org.hibernate.sessionFactory]:工厂方法“get sessionFactory”引发异常;嵌套异常是java.lang.NullPointerException
在userDAOIMPL
中未实现userDAO
启动应用程序上下文时出错。若要显示条件报告,请在启用“调试”的情况下重新运行应用程序。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
我已经完成了我的代码,但它不工作,我不能找到任何解决方案,任何帮助将得到认可 weather.java WeatherController.java 请帮我解决这个错误