我在programming.I一个新手在我的挥杆application.I问题想什么毛病session.I使用Hibernate和Spring.When来配置它,我按按钮,我想添加信息到数据库,但我得到NullPoinerException.Maybe我必须以另一种方式编码用户界面? 需要你的帮助!谢谢。Hibernate和在Swing应用程序春天
这里我的代码:
MainFrame.java
public class MainFrame extends JFrame {
public MainFrame(){
setTitle("Title");
setSize(300,300);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
makeButtons();
setVisible(true);
}
public void makeButtons(){
JPanel panel=new JPanel();
panel.add(makeLoginField());
panel.add(makeLoginButton());
panel.add(makePassField());
panel.setVisible(true);
this.add(panel);
}
public JButton makeLoginButton(){
JButton loginButton=new JButton("Login");
loginButton.addActionListener(new Action());
return loginButton;
}
public JTextField makeLoginField(){
JTextField loginField=new JTextField();
loginField.setSize(new Dimension(134, 20));
return loginField;
}
public JPasswordField makePassField(){
JPasswordField passField=new JPasswordField();
passField.setSize(new Dimension(134, 20));
return passField;
}
public static void main(String[] args) {
JFrame m=new MainFrame();
}
}
Action.java
class Action implements ActionListener{
@Autowired
private UserServiceInterface userService;
public void setuserService(UserServiceInterface userService) {
this.userService=userService;
}
public void actionPerformed (ActionEvent e){
User u=new User();
u.setName("HellofromGUI");
userService.addUser(u);
}
}
UserService.java
@Transactional
public class UserService implements UserServiceInterface{
@Autowired
private UserDaoInterface dao;
public void setDao(UserDaoInterface dao) {
this.dao = dao;
}
public void addUser(User u){
dao.insertRow(u);
}
public List getData(){
return dao.getDBValues();
}
}
UserDao.java
public class UserDao implements UserDaoInterface{
@Autowired
private SessionFactory sessionFactory;
public void insertRow(User user) {
Session session = null;
session = sessionFactory.getCurrentSession();
session.save(user);
}
public void setSessionFactory(SessionFactory sessionFactory) {
this.sessionFactory = sessionFactory;
}
public List getDBValues() {
Session session = sessionFactory.getCurrentSession();
List<User> users = session.createCriteria(User.class).list();
return users;
}
}
的beans.xml
<beans>
<bean class="org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor" />
<bean id="userdao" class="dao.UserDao">
<property name="sessionFactory">
<ref bean="sessionFactory" />
</property>
</bean>
<bean id="userservice" class="service.UserService">
<property name="dao">
<ref bean="userdao" />
</property>
</bean>
<bean id="paymentdao" class="dao.PaymentDao">
<property name="sessionFactory">
<ref bean="sessionFactory" />
</property>
</bean>
<bean id="paymentservice" class="service.PaymentService">
<property name="dao">
<ref bean="paymentdao" />
</property>
</bean>
<bean id="usergui" class="ui.Action">
<property name="userService">
<ref bean="userservice" />
</property>
</bean>
</beans>
可你也发表您的挥杆方面的文件? – 2011-05-19 11:45:52
@El刮破的beans.xml在bean ID“userDAO的” – andre 2011-05-19 12:04:25
我看到裁判名为“SessionFactory的”豆,你在哪里声明豆?你能够调试这个代码吗?如果是这样,那么NullPointerException究竟是什么?它是sessionFactory对象吗? sessionFactory返回的是会话吗? – 2011-05-19 12:40:55