MyBatis mit Frühling: konnte keine Ergebniskarte findenJava

Java-Forum
Anonymous
 MyBatis mit Frühling: konnte keine Ergebniskarte finden

Post by Anonymous »

Ich kann das Ergebnis einer Abfrage mit MyBatis und Spring -Start mit einer XML -Datei nicht zu einer Beeinung zuordnen. ResultType (resultBean.class) Alles funktioniert, aber ich weiß nicht, wie man die innere Klasse zuordnet, daher versuche ich, das Ergebnis mit dem XML -Mapper zuzuordnen. < /P>

ICH haben diese Schnittstelle: < /p>

Code: Select all

public interface MyMapper {
@ResultMap("MyBean")
@Select("SELECT myData as myData FROM myTable")
public List getMappedData();
}
Und ich habe diese myMapper.xml -Datei auf demselben Paket (die Java -Klasse befindet sich in SRC/Main/Java/MyPackage und die XML /resources/mypackage).








< /code>

Dies ist die Klasse My SpringbootServletInitializer: < /p>

@SpringBootApplication
@EnableTransactionManagement
@MapperScan("myPackage")
@PropertySource(value = "classpath:application.properties")
public class Application extends SpringBootServletInitializer {

public static void main(String[] args) {
SpringApplication.run(Application.class, args);
}

@Override
protected SpringApplicationBuilder configure(SpringApplicationBuilder application) {
return application.sources(Application.class);
}

@Value("${spring.datasource.jndi-name}")
private String jndiName;

@Bean
public DataSource dataSource() {
final JndiDataSourceLookup dsLookup = new JndiDataSourceLookup();
DataSource dataSource = dsLookup.getDataSource(jndiName);
return dataSource;
}

@Bean
public DataSource jndiObjectFactoryBean() {
JndiObjectFactoryBean jofb = new JndiObjectFactoryBean();
jofb.setJndiName(jndiName);
return (DataSource) jofb.getObject();
}

@Bean
public DataSourceTransactionManager transactionManager(DataSource dataSource) {
return new DataSourceTransactionManager(dataSource);
}

@Bean
public ManagedTransactionFactory transactionFactory() {
return new ManagedTransactionFactory();
}

@Bean
public SqlSessionFactoryBean sqlSessionFactory(DataSource dataSource) throws Exception {
SqlSessionFactoryBean sessionFactory = new SqlSessionFactoryBean();
sessionFactory.setDataSource(dataSource);
sessionFactory.setTypeAliasesPackage("beansPackage");
return sessionFactory;
}

@Bean
public SqlSessionFactory sqlSessionFactory() throws Exception {
SqlSessionFactoryBean sqlSessionFactory = new SqlSessionFactoryBean();
sqlSessionFactory.setDataSource(dataSource());
return (SqlSessionFactory) sqlSessionFactory.getObject();
}

}
< /code>

Die Bean ist < /p>

@Alias("MyBean")
public class MyBeanimplements Serializable {
private static final long serialVersionUID = 3143220123058683967L;
private String myData;
}
< /code>

Aber es scheint, dass MyBatis den XML Mapper nicht finden kann, sodass es das Ergebnis nicht auf der rechten Bean abbilden kann. Der Fehler, den ich empfange .ErrorPageFilter]
(Standard-Task-1) Die Weiterleitung von Anfrage
[ /myPage /getData] Ausnahme [konnte nicht Finden Sie die Ergebniskarte
mypackage.mymapper.mybean]:
org.apache.ibatis.builder.incompleteElementException: konnte
Ergebniskarte mypackage.mymapper.mybean nicht finden < /p>
< /blockquote>

Fehlt mir eine Konfiguration? Vielleicht in der Datei application.property?

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post