Pregunta 1
Pregunta
What is a principal?
Pregunta 2
Pregunta 3
Pregunta
What annotations can be used to specify security privileges?
Pregunta 4
Pregunta
What is the difference between container-managed and application-managed security?
What are the pros and cons of each? When might you choose to use one in preference to the other?
Respuesta
-
Pros and cons of application-managed security
Pro: complete control
Pro: can fine-tune for performance
Con: you might forget to put it in a method
Con: managing site-wide may be a problem
-
Pros and cons of application-managed security
Pregunta 5
Pregunta
What is a native query?
Pregunta 6
Pregunta
Why is using a named query often more efficient than a JPQL query?
Respuesta
-
Using named queries may improve code organisation by separating the JPQL query strings from the Java code. It also enforces the use of query parameters rather than embedding literals dynamically into the query string and results in more efficient queries.
-
Using named queries may improve code organisation
Pregunta 7
Pregunta
Why is using a named query often more efficient than a JPQL query?
Pregunta 8
Pregunta
What is the JPA implementation that we use called? What other implementations are there?
Respuesta
-
Hibernate,
Toplink, we use this for JPA implementation in our coursework
OpenJPA
-
Toplink, we use this for JPA implementation in our coursework
Pregunta 9
Pregunta
What are the pros and cons of using JPQL queries and criteria queries?
Respuesta
-
JPQL queries are defined as strings, similarly to SQL. JPA criteria queries, on the other hand, are defined by instantiation of Java objects that represent query elements.
Advantage of using the criteria API is that errors can be detected earlier, during compilation rather than at runtime. On the other hand, for many developers string based JPQL queries, which are very similar to SQL queries, are easier to use and understand.
For simple static queries - string based JPQL queries may be preferred.
For dynamic queries that are built at runtime - the criteria API may be preferred. It is cleaner when using the JPA criteria API, because it eliminates the need for building the query using many string concatenation operations.
-
need for building the query using many string concatenation operations.
Pregunta 10
Pregunta
What is a native query?
Pregunta 11
Pregunta
What is the difference between optimistic and pessimistic transaction locking? Which do we normally use?
Pregunta 12
Pregunta
What is the relationship between a persistence unit and an entity manager?
Respuesta
-
A persistence unit defines a set of all entity classes that are managed by EntityManager
While The EntityManager is the primary interface used by application developers to interact with the JPA runtime
-
A persistence unit defines a set of all entity classes that are managed by EntityManager
Pregunta 13
Pregunta
What is a persistence unit and where are its details usually to be found?
Respuesta
-
A persistence-unit provides a convenient way of specifying a set of metadata files, and classes, and jars that contain all classes to be persisted in a grouping.
To define a persistence-unit you first need to add a file persistence.xml to the META-INF/ directory of your application jar.
http://www.datanucleus.org/products/datanucleus/jpa/emf.html#persistenceunit
-
A persistence-unit provides a convenient way of specifying a set of metadata files, and classes, and jars that contain all classes to be persisted in a grouping.
Pregunta 14
Pregunta
What is a data access object used for?
Pregunta 15
Pregunta
What is a named query and what is it useful for?
Pregunta 16
Pregunta
What major effort does JPQL save in comparison with SQL?
Respuesta
-
The main difference between JPQL and SQL lies in that the former deals with JPA entities, while the latter deals directly with relational data. As a Java developer, you also maybe interested to learn that using JPQL, unlike SQL/JDBC, eliminates the need for you to use JDBC API from your Java code—the container does all this work for you behind the scenes.
-
The main
Pregunta 17
Respuesta
-
The Java Persistence Query Language (JPQL) is a platform-independent object-oriented query language defined as part of the Java Persistence API (JPA) specification. JPQL is used to make queries against entities stored in a relational database.
-
The Java Persistence Query Language (
Pregunta 18
Pregunta
Why is JPQL useful?
Pregunta 19
Pregunta
What do we mean when we say that an entity is detached?
Respuesta
-
A detached entity is an entity which state must not be reflected by the JPA provider.
In other words, if you change its state (i.e. through setters methods) these changes will not be saved to the underlying database, as the JPA provider doesn't have to "observe" such entities.
-
A detached entity is an entity which state must not be reflected by the JPA provider.
Pregunta 20
Pregunta
How do you obtain an entitymanager when operating in each environment
Respuesta
-
A container-managed entity manager is obtained in an application through dependency injection or through JNDI lookup. A container-managed entity
manager requires the use of a JTA transaction. An Application managed entity manager is retrieved through the EntityManagerFactory API.
-
A container-managed entity manager is obtained in an application through dependency injection or through JNDI lookup
Pregunta 21
Pregunta
What is an entity manager?
Pregunta 22
Pregunta
Which relationships are by default eager, and which are by default lazy?
Pregunta 23
Pregunta
What strategies are available for mapping inheritance relationships in JPA?we have
Pregunta 24
Pregunta
What do the terms eager and lazy mean in this context?
Respuesta
-
It gives a hint to the persistence provider runtime that data should be fetched lazily (only when the application asks for the property) or eagerly (when the entity is initially loaded by the provider).
-
the entity is initially loaded by the provider).
Pregunta 25
Pregunta
How do you tell JPA where to store the data that makes up a foreign key? [Be careful!]
Respuesta
-
@OneToOne @JoinColumn(name="parent_id", referencedColumnName="ID") private Parent parent; }
-
(name="parent_id", referencedColumnName="ID") private Parent parent; }
Pregunta 26
Pregunta
Explain what an HTTP request is
Pregunta 27
Pregunta
How does an HTTP request travel over a network?
Pregunta 28
Pregunta
Explain what an HTTP response is and its relationship to a request
Pregunta 29
Pregunta
Explain what HTTP status codes such as 200 and 404 mean
Respuesta
-
404 code is the status code from the server to the client indicating the resource not found. 200 it is the code from server to client indicating that the request is received successful
-
request is received successful
Pregunta 30
Pregunta
What is a mime type and what is its relationship to HTTP messages?
Respuesta
-
Multipurpose Internet Mail Extension. The relation between the HTTP and MIME type is MIMIE type is part of HTTP header response
-
The relation between the HTTP and MIME type is MIMIE type is part of HTTP header response
Pregunta 31
Pregunta
Why in the WWW might there be more HTTP requests than HTTP responses?
Pregunta 32
Pregunta
What is the difference between a static web page and a dynamic one?
Respuesta
-
Developers generally create static pages with HTML, but use languages like PHP, Javascript, or Actionscript to create dynamic pages. They can also use frameworks like Ruby on Rails, Django, or Flex for dynamic pages. Dynamic languages and frameworks also have the technical capacity to create static Web page content. However, doing so creates source code that is unnecessarily complex for its purpose while being more difficult to maintain
-
html
Pregunta 33
Pregunta
How does the content of a dynamic web page get created?
Pregunta 34
Pregunta
What are the four architectures for dynamic web applications?
Pregunta 35
Pregunta
Why is the architecture that Java uses the most scalable?
Pregunta 36
Pregunta
Why is the architecture that Java uses the most resilient?
Pregunta 37
Pregunta
How can you use Java's architecture to provide an enterprise web application on a global scale
Pregunta 38
Pregunta
What is a servlet?
Pregunta 39
Pregunta 40
Pregunta
What is the relationship between a JSP and a servlet?
Pregunta 41
Pregunta
What advantages does Java's servlet programming model have over (a) CGI? (b) PHP?
Respuesta
-
threading and at each time CGI has to run a program which is not good practice for OS. The problem of php is in case the module is crashed than the web server is also down
-
The problem of php is in case the module is crashed than the web server is also down
Pregunta 42
Pregunta
What is an exception and what is one used for?
Respuesta
-
it is used to reporting the error.( exception is an event which occur during the execution of a program, that disrupts the normal flow of the program instructions.
-
( exception is an event which occur during the execution of a program, that disrupts the normal flow of the program instructions.
Pregunta 43
Pregunta
Explain throwing and catching exceptions?
Pregunta 44
Pregunta
What do we mean when we say that one class inherits from another?
Pregunta 45
Pregunta
If an application had classes Person, StaffMember and Student, how might they be related?
Pregunta 46
Pregunta
java.util and jim.sums.entities are examples of what?
Pregunta 47
Pregunta
What is the difference between a field that is private, protected or public?
Pregunta 48
Pregunta
What does static mean when associated with a class's fields or methods? it is a variable which is not changed wherever it called or used
Pregunta 49
Pregunta
Explain what the classes/interfaces Collection, Set, List, ArrayList and Vector represent and what are the distinctions between them?
Pregunta 50
Pregunta 51
Pregunta
What does the declaration Map<String, Person> represent?
Pregunta 52
Pregunta
What is a facelet?
Pregunta 53
Pregunta
What is a managed bean?
Pregunta 54
Pregunta
What is meant by the scope of a managed bean?
Pregunta 55
Pregunta
What are the available scopes to choose from?
Pregunta 56
Pregunta
Which scope is the default?
Pregunta 57
Pregunta
Give at least 10 examples of how different HTML controls can be represented using facelet tags
Respuesta
-
h:inputText , h:inputHidden, h:inputSecret, h:inputTextarea, h:link, h:commandButton, h:button, h:form, h:panelGrid , h:dataTable
-
h:inputText
Pregunta 58
Pregunta
What do the properties of a managed bean represent?
Pregunta 59
Pregunta
What notation is used in a facelet to associate a property or method with a control?
Pregunta 60
Pregunta
Why is JSF superior to JSP?
Pregunta 61
Pregunta
What are the 3 types of session bean?
Pregunta 62
Pregunta
In what circumstances would you use each of the 3 types?
Respuesta
-
stateful: The bean needs to hold information about the client across method invocations.
stateless:- The bean’s state has no data for a specific client.
Singleton:-State needs to be shared across the application.
-
Singleton:-State needs to be shared across the application.
Pregunta 63
Pregunta
Which of the 3 types is most commonly used?
Pregunta 64
Pregunta
What is the difference between a session bean and a message bean?
Pregunta 65
Pregunta
What is dependency injection?
Pregunta 66
Pregunta
Who or what does the injecting?
Pregunta 67
Pregunta
What annotation is normally used for dependency injection?
Pregunta 68
Pregunta
How would you specify the start and end of a transaction in a stateful EJB? BY using
Respuesta
-
@REMOVE annotation
-
@REMOVE annotationl
Pregunta 69
Pregunta
What annotations can be used to control what happens when an EJB is created or destroyed? @PreDestroy @PostConstruct
Pregunta 70
Pregunta
What is the timer service used for?
Respuesta
-
Enables you to schedule timed notifications for all types of enterprise beans except for stateful session beans. You can schedule a timed notification to occur according to a calendar schedule, at a specific time, after a duration of time, or at timed. How to use it? intervals.timerService.createSingleActionTimer(duration, new TimerConfig());
-
TimerConfig());
Pregunta 71
Pregunta
What is the difference between a local interface, a remote interface and a no-interface view?
Respuesta
-
When EJB does not explicitly specify as interface type it is assume to be local otherwise it is remote. @localBean @remoteBean No -Interface :Is almost same as local client view, but there are differences. Your bean class is not required to implement client view interfaces in this case. All public methods of the bean class are automatically exposed to the caller. no-interface view always acquires an EJB reference
-
l
Pregunta 72
Pregunta
What do we mean by pooling beans?
Pregunta 73
Pregunta
What is an entity bean?
Pregunta 74
Pregunta
How do you make a bean an entity bean?
Pregunta 75
Pregunta
What does the @Id annotation do?
Pregunta 76
Pregunta
What annotation is used to denote a composite primary key?
Pregunta 77
Pregunta
Under what particular circumstances would you have to use the @Column and/or @Table annotations?
Pregunta 78
Pregunta
Explain what is meant by a unidirectional relationship and a bidirectional relationship?
Respuesta
-
In a unidirectional relationship, only one entity has a relationship field or property that refers to the other. For example, LineItem would have a relationship field that identifies Product, but Product would not have a relationship field or property for LineItem. In other words,LineItem knows about Product, but Product doesn’t know which LineItem instances refer to it.
while in a bidirectional relationship, each entity has a relationship field or property that refers to the other entity. Through the relationship field or property, an entity class’s code can access its related object. If an entity has a related field, the entity is said to “know” about its related object. For example, if Order knows what LineItem instances it has and if LineItem knows what Order it belongs to, they have a bidirectional relationship.
-
relationship,
Pregunta 79
Pregunta
What are the annotations used to specify the chosen inheritance strategy? Where must those annotations be placed?
Pregunta 80
Pregunta
How do you get JPA to arrange your lists in the right order?