0

MySQL データベースとのデータベース接続を確立する Spring MVC アプリケーションを作成しています。Java ベースの構成を使用しました。DataSoruceしかし、なぜ来るのかわかりませんnull

誰かが私が間違っているところを教えてもらえますか?

フロントコントローラーを構成したクラス。

public class FontControllerConfig extends AbstractAnnotationConfigDispatcherServletInitializer {

    @Override
    protected Class<?>[] getRootConfigClasses() {

        return new Class[] { WebMvcConfig.class };
    }

    @Override
    protected Class<?>[] getServletConfigClasses() {

        return null;
    }

    @Override
    protected String[] getServletMappings() {
        return new String[] { "/" };
    }
}

Spring MVC 機能を有効にする必要があるクラス。

@Configuration
@EnableWebMvc
@ComponentScan(basePackages = "controller")
public class WebMvcConfig {

    @Bean
    public InternalResourceViewResolver viewResolver() {
        InternalResourceViewResolver vr = new InternalResourceViewResolver();

        // set location of views.
        vr.setPrefix("/");

        // set the extension of views.
        vr.setSuffix(".jsp");

        return vr;
    }

}

データベース接続の作成

public class DbManager {

    @Bean
    public BasicDataSource getDataSource() {
        BasicDataSource bds = new BasicDataSource();
        bds.setDriverClassName("com.mysql.jdbc.Driver");
        bds.setUrl("jdbc:mysql://localhost:3306/local");
        bds.setUsername("root");
        bds.setPassword("");

        return bds;
    }

    @Autowired
    private DataSource ds;


    public void setDs(DataSource ds) {
        this.ds = ds;
    }

    public Connection conn() throws SQLException {

        Connection conn = ds.getConnection();

        return conn;

    }

}

接続が確立されたかどうかを確認するためのユーザー要求を処理する最後のコントローラー クラス。

@Controller
public class MyController {

    @RequestMapping("/check")
    public ModelAndView greet() throws SQLException {

        DbManager dbMan = new DbManager();

        if (dbMan.conn() != null) {
            return new ModelAndView("welcome", "msg", "SUCCESS");
        } else {
            return new ModelAndView("welcome", "msg", "FAIL");
        }

    }

}

前もって感謝します :)

4

2 に答える 2