0

Spring MVC を使用して Web アプリケーションを開発しています。ビーンズファイルとアプリケーションコンテキストに関連する特定のことを聞きたいです。

  1. オブジェクトを持つクラスがあります。従業員、製品、その従業員 (ID、名前) にいくつかのオブジェクトを持つプロジェクトクラスがあり、製品とプロジェクトにも同じことが当てはまるとしましょう。今、私はこのような次のオブジェクトのビーンを書かなければなりません:

    <bean id="..." class="..."/>
    

    employee.xml 、 product.xml などのクラスごとに個別の bean ファイルを作成する必要がありますか、それとも 1 つのファイルの 1 つの beans タグにすべての bean をリストする必要がありますか? xyz.xml としましょう。? そして、リクエスト、セッションなどのスコープについて言及する必要があります。ここで言及する必要があるのは、各 Bean または他の場所を書き留めている間だけですか?

  2. データベースに従業員を追加したり、エントリを削除したりする方法があります。bean タグのどこかでそれらを参照する必要がありますか、それとも単に Java クラスに記述する必要がありますか?

  3. JDBC を使用したデータベース接続が必要です。現在、接続オブジェクトを作成して使用するクラスがあります。その豆の作り方。何度でも使えるように。現在、私のデータベース接続クラスは次のようになっています:

    パッケージ MyPackage;

    java.sql.Connection をインポートします。java.sql.DriverManager をインポートします。java.sql.ResultSet をインポートします。import java.sql.SQLException; java.sql.Statement をインポートします。

    パブリッククラス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();}
        }
    
    }
    
  4. すべての Bean を別のファイルまたは単一のファイルに書き終えたら。Spring MVC での使用方法。アプリケーションコンテキストを使用してそれをプロジェクトに取り込む方法。たとえば、employee.xml、product.xml、または単一のファイル xyz.xml があるとします。すべてが正常に機能するように、applicationContext.xml にどのコードを記述する必要があるか。私が書かなければならないビーンファクトリーメソッドはありますか?

私の問題で私を助けてください..ありがとう... :)

4

2 に答える 2

0

3 番目の問題について: サービスのような任意のクラスの 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 を作成しないでください。

于 2014-08-25T12:04:25.060 に答える
0

1) POJO は Bean として定義しないでください。サービス、リポジトリ、コントローラーのみを Bean として定義する必要があります。

2) ビーンタグで言及する必要はありません。

3) JDBCTemplate を使用し、それにデータ ソースを設定します。

4) ディスパッチャ サーブレットの 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>
于 2012-04-04T07:55:05.640 に答える