Guest User

Untitled

a guest
Apr 8th, 2018
102
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.19 KB | None | 0 0
  1. public class ArticleDao {
  2.  
  3. private final JdbcTemplate jdbcTemplate;
  4.  
  5. public ArticleDao(JdbcTemplate jdbcTemplate) {
  6. this.jdbcTemplate = jdbcTemplate;
  7. }
  8.  
  9. public void draft(String md5) {
  10. jdbcTemplate.update("update article set state = ? where md5 = ?", "draft", md5);
  11. }
  12.  
  13. public List<Article> findByDate(String date) {
  14. return jdbcTemplate.query("select * from article where date = ? order by date desc", new Object[] { dateBuilder.date(date) }, new ArticleMapper());
  15. }
  16. }
  17.  
  18. public class ArticleMapper implements RowMapper<Article> {
  19.  
  20. @Override
  21. public Article mapRow(ResultSet resultSet, int i) throws SQLException {
  22. Map<String, String> map = new HashMap<String, String>();
  23. map.put("channel", resultSet.getString("category"));
  24. map.put("title", resultSet.getString("title"));
  25. map.put("override title", resultSet.getString("title_overriden"));
  26. map.put("testo", resultSet.getString("content"));
  27. map.put("datanotizia", resultSet.getString("date"));
  28. map.put("state", resultSet.getString("state"));
  29. return new Article(map);
  30. }
  31. }
  32.  
  33. public class MysqlBuilder {
  34.  
  35. @Override
  36. protected DataSource build() {
  37. DriverManagerDataSource dataSource = new DriverManagerDataSource();
  38. dataSource.setDriverClassName("com.mysql.jdbc.Driver");
  39. dataSource.setUrl(format("jdbc:mysql://{0}/{1}", getHost(), getName()));
  40. dataSource.setUsername("root");
  41. dataSource.setPassword("");
  42. return dataSource;
  43. }
  44.  
  45. }
  46.  
  47.  
  48. public class ArticleDaoTest {
  49. private static ArticleDao dao;
  50.  
  51. @BeforeClass
  52. public static void setUp() {
  53. dao = new DaoFactory("testdb").createDao(Article.class);
  54. }
  55.  
  56. private List<Article> foundArticles;
  57.  
  58. @Test
  59. public void shouldFindByMd5() {
  60. Article article = new Article(map("channel", "channel", "title", "title", "testo", "testo", "datanotizia", "2010-02-16"));
  61. dao.updateOrInsert(article);
  62.  
  63. foundArticles = dao.findByMd5(article.getMd5());
  64.  
  65. assertEquals(article, foundArticles.get(0));
  66. }
  67.  
  68. @Test
  69. public void shouldFoundAddedArticleByCategory() {
  70. Article article = new Article(map("channel", "channel", "title", "title", "testo", "testo", "datanotizia", "2010-02-16"));
  71. dao.updateOrInsert(article);
  72.  
  73. foundArticles = dao.findByCategory("channel");
  74.  
  75. assertEquals(article, foundArticles.get(0));
  76. }
  77. }
Add Comment
Please, Sign In to add comment