Skip to content

Commit 07cdca8

Browse files
author
gkislin@yandex.ru
committed
Homework lesson 06
1 parent 5ffea76 commit 07cdca8

File tree

12 files changed

+55
-28
lines changed

12 files changed

+55
-28
lines changed

src/main/java/ru/javawebinar/topjava/model/User.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,8 @@ public class User extends NamedEntity {
4343
protected boolean enabled = true;
4444

4545
@Column(name = "registered", columnDefinition = "timestamp default now()")
46-
protected Date registered;
46+
@NotEmpty
47+
protected Date registered = new Date();
4748

4849
@Enumerated(EnumType.STRING)
4950
@CollectionTable(name = "user_roles", joinColumns = @JoinColumn(name = "user_id"))

src/main/java/ru/javawebinar/topjava/repository/jdbc/JdbcUserRepositoryImpl.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,7 @@ public User save(User user) {
5454
} else {
5555
namedParameterJdbcTemplate.update(
5656
"UPDATE users SET name=:name, email=:email, password=:password, " +
57-
"registered=:registered, enabled=:enabled WHERE id=:id", map);
57+
"enabled=:enabled WHERE id=:id", map);
5858
}
5959
return user;
6060
}
Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
package ru.javawebinar.topjava.web.meal;
2+
3+
import org.springframework.beans.factory.annotation.Autowired;
4+
import org.springframework.stereotype.Controller;
5+
import org.springframework.ui.Model;
6+
import org.springframework.web.bind.annotation.RequestMapping;
7+
import org.springframework.web.bind.annotation.RequestMethod;
8+
import ru.javawebinar.topjava.LoggedUser;
9+
import ru.javawebinar.topjava.service.UserMealService;
10+
11+
/**
12+
* User: gkislin
13+
* Date: 22.08.2014
14+
*/
15+
@Controller
16+
public class UserMealController {
17+
@Autowired
18+
private UserMealService service;
19+
20+
@RequestMapping(value = "/meals", method = RequestMethod.GET)
21+
public String mealList(Model model) {
22+
model.addAttribute("mealList", service.getAll(LoggedUser.id()));
23+
return "mealList";
24+
}
25+
}

src/main/resources/db/initDB.sql

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ CREATE TABLE users
1111
name VARCHAR,
1212
email VARCHAR NOT NULL,
1313
password VARCHAR NOT NULL,
14-
registered TIMESTAMP DEFAULT now(),
14+
registered TIMESTAMP NOT NULL DEFAULT now(),
1515
enabled BOOL DEFAULT TRUE
1616
);
1717
CREATE UNIQUE INDEX unique_email ON USERS (email);

src/test/java/ru/javawebinar/topjava/UserTestData.java

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,8 +15,6 @@
1515
*/
1616
public class UserTestData {
1717

18-
private static final LoggerWrapper LOG = LoggerWrapper.get(UserTestData.class);
19-
2018
public static final TestUser USER = new TestUser(BaseEntity.START_SEQ, "User", "user@yandex.ru", "password", true, Role.ROLE_USER);
2119
public static final User ADMIN = new TestUser(BaseEntity.START_SEQ + 1, "Admin", "admin@gmail.com", "admin", true, Role.ROLE_ADMIN);
2220

src/test/java/ru/javawebinar/topjava/service/DbTest.java

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,6 @@
77
import org.springframework.beans.factory.annotation.Autowired;
88
import org.springframework.test.context.ContextConfiguration;
99
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
10-
import ru.javawebinar.topjava.repository.JpaUtil;
1110
import ru.javawebinar.topjava.util.DbPopulator;
1211

1312
/**
@@ -24,9 +23,6 @@ abstract public class DbTest {
2423
@Rule
2524
public ExpectedException thrown = ExpectedException.none();
2625

27-
@Autowired
28-
private JpaUtil jpaUtil;
29-
3026
@Autowired
3127
private DbPopulator dbPopulator;
3228

@@ -37,6 +33,5 @@ abstract public class DbTest {
3733
public void setUp() throws Exception {
3834
dbPopulator.execute();
3935
userService.evictCache();
40-
jpaUtil.clear2ndLevelHibernateCache();
4136
}
4237
}
Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
package ru.javawebinar.topjava.service;
2+
3+
import org.junit.Before;
4+
import org.springframework.beans.factory.annotation.Autowired;
5+
import ru.javawebinar.topjava.repository.JpaUtil;
6+
7+
/**
8+
* GKislin
9+
* 07.04.2015.
10+
*/
11+
abstract public class OrmUserServiceTest extends UserServiceTest {
12+
@Autowired
13+
private JpaUtil jpaUtil;
14+
15+
@Before
16+
public void setUp() throws Exception {
17+
super.setUp();
18+
jpaUtil.clear2ndLevelHibernateCache();
19+
}
20+
}

src/test/java/ru/javawebinar/topjava/service/UserServiceTest.java

Lines changed: 0 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,11 @@
11
package ru.javawebinar.topjava.service;
22

3-
import org.junit.Before;
43
import org.junit.Test;
5-
import org.springframework.beans.factory.annotation.Autowired;
64
import org.springframework.dao.DataAccessException;
75
import ru.javawebinar.topjava.UserTestData.*;
86
import ru.javawebinar.topjava.model.BaseEntity;
97
import ru.javawebinar.topjava.model.Role;
108
import ru.javawebinar.topjava.model.User;
11-
import ru.javawebinar.topjava.util.DbPopulator;
129
import ru.javawebinar.topjava.util.exception.NotFoundException;
1310

1411
import java.util.Arrays;
@@ -19,15 +16,6 @@
1916

2017
abstract public class UserServiceTest extends DbTest {
2118

22-
@Autowired
23-
private DbPopulator dbPopulator;
24-
25-
@Before
26-
public void setUp() throws Exception {
27-
dbPopulator.execute();
28-
userService.evictCache();
29-
}
30-
3119
@Test
3220
public void testSave() throws Exception {
3321
TestUser tu = new TestUser("New", "new@gmail.com", "newPass", Role.ROLE_USER);
Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
11
package ru.javawebinar.topjava.service.datajpa;
22

33
import org.springframework.test.context.ActiveProfiles;
4-
import ru.javawebinar.topjava.service.UserServiceTest;
4+
import ru.javawebinar.topjava.service.OrmUserServiceTest;
55

66
import static ru.javawebinar.topjava.Profiles.DATAJPA;
77
import static ru.javawebinar.topjava.Profiles.POSTGRES;
88

99
@ActiveProfiles({POSTGRES, DATAJPA})
10-
public class DataJpaUserServiceTest extends UserServiceTest {
10+
public class DataJpaUserServiceTest extends OrmUserServiceTest {
1111
}
Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
11
package ru.javawebinar.topjava.service.jpa;
22

33
import org.springframework.test.context.ActiveProfiles;
4-
import ru.javawebinar.topjava.service.UserServiceTest;
4+
import ru.javawebinar.topjava.service.OrmUserServiceTest;
55

66
import static ru.javawebinar.topjava.Profiles.JPA;
77
import static ru.javawebinar.topjava.Profiles.POSTGRES;
88

99
@ActiveProfiles({POSTGRES, JPA})
10-
public class JpaUserServiceTest extends UserServiceTest {
10+
public class JpaUserServiceTest extends OrmUserServiceTest {
1111
}

0 commit comments

Comments
 (0)