Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- bind(String.class)
- .annotatedWith(Names.named("JDBC URL"))
- .toInstance("jdbc:mysql://localhost/pizza");
- class SomeClass {
- @Inject
- SomeClass(@Named("JDBC URL") String jdbcUrl);
- this.jdbcUrl = jdbcUrl;
- }
- }
- class SomeClass {
- @Inject
- SomeClass(@JdbcUrl String jdbcUrl);
- this.jdbcUrl = jdbcUrl;
- }
- @Retention(RetentionPolicy.RUNTIME)
- @Target({ElementType.FIELD, ElementType.PARAMETER})
- @BindingAnnotation
- public @interface JdbcUrl {}
- }
- public class SomeModule extends AbstractModule {
- private final String jdbcUrl; // set in constructor
- protected void configure() {
- bindConstant().annotatedWith(SomeClass.JdbcUrl.class).to(jdbcUrl);
- }
- }
- class SomeOtherClass {
- @Inject
- SomeOtherClass(SomeClass someClass);
- this.someClass = someClass;
- }
- SomeClass instance = Guice.createInjector(new MyModule("any string i like to use")).getInstance(SomeClass.class);
Add Comment
Please, Sign In to add comment