我正在使用Spring MVC开发一个Web应用程序。我想询问与bean文件和Application Context相关的某些事情。
我有包含对象的类。假设我有一个员工,产品,项目类,其中包含该员工中的一些对象(ID,名称),同样适用于产品和项目。现在我必须为以下对象编写bean:
<bean id="..." class="..."/>
我应该为employee.xml,product.xml等每个类创建一个单独的bean文件,还是应该在单个文件中列出一个beans标记中的所有bean,让我们说xyz.xml。 ? 我们必须提到请求,会话等范围。我们在这里只提到写下每个bean或其他地方的时候?
我们确实有在数据库中添加员工或删除某些条目的方法。我们是否需要在bean标记中的任何位置引用它们或者只是在java类中编写它们?
我使用JDBC涉及数据库连接。现在我有一个类,我只需要创建一个连接对象并使用它。如何制作一个豆子。这样它就可以一次又一次地使用。目前我的数据库连接类是这样的:
打包MyPackage;
import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement;
public class HandleConnections {
public Connection getConnection()
{
Connection con = null;
try{
String driver = "sun.jdbc.odbc.JdbcOdbcDriver";
Class.forName(driver);
String db = "jdbc:odbc:Practice_Database";
con = DriverManager.getConnection(db,"","");
}catch(Exception e){System.out.println(e);}
return con;
}
public void closeConnectionVariables(Connection obj, ResultSet rs, Statement st){
//try {rs.close();} catch (SQLException e) {e.printStackTrace();}
try {obj.close();} catch (SQLException e) {e.printStackTrace();}
try {st.close();} catch (SQLException e) {e.printStackTrace();}
}
}
一旦我完成了将所有bean写入单独的文件或单个文件中。如何在Spring MVC中使用它。如何使用Application Context将其带入项目。假设我有employee.xml,product.xml或者我有一个文件xyz.xml。我需要在applicationContext.xml中编写什么代码才能使一切正常。是否有任何bean工厂方法我必须写。
请帮我解决我的问题..谢谢...... :)
答案 0 :(得分:0)
1)不应将POJO定义为bean。只应将服务,存储库,控制器定义为bean。
2)你不需要在bean标签中提及。
3)使用JDBCTemplate并将数据源设置为它。
4)您已为此调度员servlet设置了contextConfigLocation
<servlet>
<servlet-name>appServlet</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>/WEB-INF/spring/appServlet/servlet-context.xml</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
答案 1 :(得分:0)
对于你的第三个问题:要创建任何类的bean,比如服务,在控制器中编写代码,如下所示
@Controller
@RequestMapping("eventManagement")
public class ExamEventController implements ApplicationContextAware {
private ExamEventServiceImpl eventServiceImpl;
@RequestMapping(value = { "/eventList" }, method = RequestMethod.GET)
public String listGet(Model model, HttpServletRequest request,
Locale locale) {
ExamEvent event=eventServiceImpl.getEventDetails(eventId);
}
...
...
...
public void setApplicationContext(ApplicationContext applicationContext)
throws BeansException {
eventServiceImpl = (ExamEventServiceImpl)applicationContext.getBean("ExamEventService");
}
}
如上所述,不要为POJO类创建bean。