我是Spring的新手,嘗試使用PostgeSQL的spring jdbc並在JdbcTemplate.update()的DAO類中獲取NullPointerException。內容如下:JdbcTemplate.update()中的NullPointerException
的pom.xml
<!-- Spring JDBC Support -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-jdbc</artifactId>
<version>4.0.2.RELEASE</version>
</dependency>
<!-- postgreSQL Driver -->
<dependency>
<groupId>org.postgresql</groupId>
<artifactId>postgresql</artifactId>
<version>9.4-1200-jdbc41</version>
</dependency>
servlet的context.xml中
<!-- declare datasource bean -->
<bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
<property name="driverClassName" value="org.postgresql.Driver" />
<property name="url" value="jdbc:postgresql://localhost:5432/notesHero" />
<property name="username" value="postgres" />
<property name="password" value="postgres" />
</bean>
DAOImpl類
@Component
public class AdvertiseDAOImpl implements AdvertiseDAO
{
private JdbcTemplate template;
@Autowired
private DataSource dataSource;
public void setDataSource(DataSource dataSource) {
this.dataSource = dataSource;
template = new JdbcTemplate(dataSource);
}
/*public AdvertiseDAOImpl(DataSource dataSource) {
template = new JdbcTemplate(dataSource);
}*/
@Override
public void save(Advertise ad) {
// TODO Auto-generated method stub
String insertQry = "INSERT INTO ad_master (name, email_id) values (?,?)";
System.out.println(ad.getName() + ad.getEmail());
template.update(insertQry, ad.getName(), ad.getEmail());
}
@Override
public void delete(long postId) {
// TODO Auto-generated method stub
}
@Override
public Advertise get(long postId) {
// TODO Auto-generated method stub
return null;
}
}
在這方面的任何幫助將高度讚賞..